annotate man/xresmini.texi @ 71137:814a9e8a0f9a

*** empty log message ***
author Kim F. Storm <storm@cua.dk>
date Thu, 01 Jun 2006 13:52:42 +0000
parents fc945cb968d9
children b7261e09f8e4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
70192
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1 @c This is part of the Emacs manual.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2 @c Copyright (C) 1987, 1993, 1994, 1995, 1997, 2001, 2002, 2003,
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3 @c 2004, 2005, 2006 Free Software Foundation, Inc.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
4 @c See file emacs.texi for copying conditions.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
5 @node X Resources, Antinews, Emacs Invocation, Top
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
6 @appendix X Options and Resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
7
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
8 You can customize some X-related aspects of Emacs behavior using X
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
9 resources, as is usual for programs that use X. On MS-Windows, you
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
10 can customize some of the same aspects using the system registry.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
11 @xref{MS-Windows Registry}. Likewise, Emacs on MacOS Carbon emulates X
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
12 resources using the Preferences system. @xref{Mac Environment Variables}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
13
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
14 When Emacs is built using an ``X toolkit'', such as Lucid or
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
15 LessTif, you need to use X resources to customize the appearance of
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
16 the widgets, including the menu-bar, scroll-bar, and dialog boxes.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
17 This is because the libraries that implement these don't provide for
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
18 customization through Emacs. GTK+ widgets use a separate system of
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
19 ``GTK resources''. In this chapter we describe the most commonly used
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
20 resource specifications. For full documentation, see the online
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
21 manual.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
22
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
23 @c Add xref for LessTif/Motif menu resources.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
24
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
25 @menu
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
26 * Resources:: Using X resources with Emacs (in general).
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
27 * Table of Resources:: Table of specific X resources that affect Emacs.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
28 * Face Resources:: X resources for customizing faces.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
29 * Lucid Resources:: X resources for Lucid menus.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
30 * GTK resources:: Resources for GTK widgets.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
31 @end menu
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
32
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
33 @node Resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
34 @appendixsec X Resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
35 @cindex resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
36 @cindex X resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
37 @cindex @file{~/.Xdefaults} file
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
38 @cindex @file{~/.Xresources} file
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
39
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
40 Programs running under the X Window System organize their user
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
41 options under a hierarchy of classes and resources. You can specify
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
42 default values for these options in your X resources file, usually
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
43 named @file{~/.Xdefaults} or @file{~/.Xresources}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
44 If changes in @file{~/.Xdefaults} do not
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
45 take effect, it is because your X server stores its own list of
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
46 resources; to update them, use the shell command @command{xrdb}---for
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
47 instance, @samp{xrdb ~/.Xdefaults}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
48
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
49 Each line in the file specifies a value for one option or for a
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
50 collection of related options, for one program or for several programs
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
51 (optionally even for all programs).
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
52
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
53 @cindex Registry (MS-Windows)
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
54 MS-Windows systems don't support @file{~/.Xdefaults} files, but
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
55 Emacs compiled for Windows looks for X resources in the Windows
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
56 Registry, under the key @samp{HKEY_CURRENT_USER\SOFTWARE\GNU\Emacs}
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
57 and then under the key @samp{HKEY_LOCAL_MACHINE\SOFTWARE\GNU\Emacs}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
58 The menu and scrollbars are native widgets on MS-Windows, so they are
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
59 only customizable via the system-wide settings in the Display Control
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
60 Panel. You can also set resources using the @samp{-xrm} command line
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
61 option (see below.)
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
62
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
63 Applications such as Emacs look for resources with specific names
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
64 and their particular meanings. Case distinctions are significant in
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
65 these names. Each resource specification in @file{~/.Xdefaults}
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
66 states the name of the program and the name of the resource. For
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
67 Emacs, the program name is @samp{Emacs}. It looks like this:
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
68
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
69 @example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
70 Emacs.borderWidth: 2
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
71 @end example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
72
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
73 The order in which the lines appear in the file does not matter.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
74 Also, command-line options always override the X resources file.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
75
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
76 You can experiment with the effect of different resource settings
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
77 with the @code{editres} program. Select @samp{Get Tree} from the
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
78 @samp{Commands} menu, then click on an Emacs frame. This will display
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
79 a tree showing the structure of X toolkit widgets used in an Emacs
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
80 frame. Select one of them, such as @samp{menubar}, then select
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
81 @samp{Show Resource Box} from the @samp{Commands} menu. This displays
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
82 a list of all the meaningful X resources for that widget, and allows
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
83 you to edit them. Changes take effect when you click on the
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
84 @samp{Apply} button. (See the @code{editres} man page for more
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
85 details.)
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
86
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
87 @node Table of Resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
88 @appendixsec Table of X Resources for Emacs
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
89
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
90 This table lists the resource names that designate options for
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
91 Emacs, not counting those for the appearance of the menu bar, each
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
92 with the class that it belongs to:
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
93
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
94 @table @asis
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
95 @item @code{background} (class @code{Background})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
96 Background color name.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
97
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
98 @item @code{borderColor} (class @code{BorderColor})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
99 Color name for the external border.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
100
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
101 @item @code{cursorColor} (class @code{Foreground})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
102 Color name for text cursor (point).
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
103
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
104 @item @code{font} (class @code{Font})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
105 Font name (or fontset name, @pxref{Fontsets}) for @code{default} font.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
106
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
107 @item @code{foreground} (class @code{Foreground})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
108 Color name for text.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
109
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
110 @item @code{geometry} (class @code{Geometry})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
111 Window size and position. Be careful not to specify this resource as
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
112 @samp{emacs*geometry}, because that may affect individual menus as well
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
113 as the Emacs frame itself.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
114
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
115 If this resource specifies a position, that position applies only to the
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
116 initial Emacs frame (or, in the case of a resource for a specific frame
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
117 name, only that frame). However, the size, if specified here, applies to
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
118 all frames.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
119
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
120 @item @code{iconName} (class @code{Title})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
121 Name to display in the icon.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
122
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
123 @item @code{internalBorder} (class @code{BorderWidth})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
124 Width in pixels of the internal border.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
125
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
126 @item @code{lineSpacing} (class @code{LineSpacing})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
127 @cindex line spacing
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
128 @cindex leading
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
129 Additional space (@dfn{leading}) between lines, in pixels.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
130
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
131 @item @code{menuBar} (class @code{MenuBar})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
132 @cindex menu bar
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
133 Give frames menu bars if @samp{on}; don't have menu bars if
70476
4e4de282af95 (Table of Resources): Remove xref to non-existent node "LessTif Resources".
Eli Zaretskii <eliz@gnu.org>
parents: 70207
diff changeset
134 @samp{off}. @xref{Lucid Resources}, for how to control the appearance
4e4de282af95 (Table of Resources): Remove xref to non-existent node "LessTif Resources".
Eli Zaretskii <eliz@gnu.org>
parents: 70207
diff changeset
135 of the menu bar if you have one.
70192
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
136
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
137 @item @code{pointerColor} (class @code{Foreground})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
138 Color of the mouse cursor.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
139
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
140 @item @code{screenGamma} (class @code{ScreenGamma})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
141 @cindex gamma correction
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
142 Gamma correction for colors, equivalent to the frame parameter
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
143 @code{screen-gamma}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
144
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
145 @item @code{title} (class @code{Title})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
146 Name to display in the title bar of the initial Emacs frame.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
147
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
148 @item @code{toolBar} (class @code{ToolBar})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
149 @cindex tool bar
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
150 Number of lines to reserve for the tool bar. A zero value suppresses
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
151 the tool bar. If the value is non-zero and
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
152 @code{auto-resize-tool-bars} is non-@code{nil}, the tool bar's size
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
153 will be changed automatically so that all tool bar items are visible.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
154
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
155 @item @code{useXIM} (class @code{UseXIM})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
156 @cindex XIM
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
157 @cindex X input methods
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
158 @cindex input methods, X
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
159 Turn off use of X input methods (XIM) if @samp{false} or @samp{off}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
160 This is only relevant if your Emacs is actually built with XIM
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
161 support. It is potentially useful to turn off XIM for efficiency,
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
162 especially slow X client/server links.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
163
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
164 @item @code{verticalScrollBars} (class @code{ScrollBars})
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
165 Give frames scroll bars if @samp{on}; don't have scroll bars if
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
166 @samp{off}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
167 @end table
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
168
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
169 @node Face Resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
170 @appendixsec X Resources for Faces
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
171
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
172 You can use resources to customize the appearance of particular
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
173 faces (@pxref{Faces}):
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
174
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
175 @table @code
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
176 @item @var{face}.attributeForeground
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
177 Foreground color for face @var{face}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
178 @item @var{face}.attributeBackground
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
179 Background color for face @var{face}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
180 @item @var{face}.attributeUnderline
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
181 Underline flag for face @var{face}. Use @samp{on} or @samp{true} for
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
182 yes.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
183 @item @var{face}.attributeStrikeThrough
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
184 @itemx @var{face}.attributeOverline
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
185 @itemx @var{face}.attributeBox
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
186 @itemx @var{face}.attributeInverse
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
187 Likewise, for other boolean font attributes.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
188 @item @var{face}.attributeStipple
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
189 The name of a pixmap data file to use for the stipple pattern, or
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
190 @code{false} to not use stipple for the face @var{face}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
191 @item @var{face}.attributeBackgroundPixmap
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
192 The background pixmap for the face @var{face}. Should be a name of a
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
193 pixmap file or @code{false}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
194 @item @var{face}.attributeFont
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
195 Font name (full XFD name or valid X abbreviation) for face @var{face}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
196 Instead of this, you can specify the font through separate attributes.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
197 @end table
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
198
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
199 Instead of using @code{attributeFont} to specify a font name, you can
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
200 select a font through these separate attributes:
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
201
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
202 @table @code
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
203 @item @var{face}.attributeFamily
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
204 Font family for face @var{face}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
205 @item @var{face}.attributeHeight
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
206 Height of the font to use for face @var{face}: either an integer
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
207 specifying the height in units of 1/10@dmn{pt}, or a floating point
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
208 number that specifies a scale factor to scale the underlying face's
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
209 default font, or a function to be called with the default height which
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
210 will return a new height.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
211 @item @var{face}.attributeWidth
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
212 @itemx @var{face}.attributeWeight
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
213 @itemx @var{face}.attributeSlant
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
214 Each of these resources corresponds to a like-named font attribute,
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
215 and you write the resource value the same as the symbol you would use
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
216 for the font attribute value.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
217 @item @var{face}.attributeBold
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
218 Bold flag for face @var{face}---instead of @code{attributeWeight}. Use @samp{on} or @samp{true} for
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
219 yes.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
220 @item @var{face}.attributeItalic
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
221 Italic flag for face @var{face}---instead of @code{attributeSlant}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
222 @end table
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
223
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
224 @node Lucid Resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
225 @appendixsec Lucid Menu X Resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
226 @cindex Menu X Resources (Lucid widgets)
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
227 @cindex Lucid Widget X Resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
228
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
229 If the Emacs installed at your site was built to use the X toolkit
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
230 with the Lucid menu widgets, then the menu bar is a separate widget
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
231 and has its own resources. The resource specifications start with
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
232 @samp{Emacs.pane.menubar}---for instance, to specify the font
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
233 @samp{8x16} for the menu-bar items, write this:
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
234
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
235 @example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
236 Emacs.pane.menubar.font: 8x16
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
237 @end example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
238
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
239 @noindent
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
240 Resources for @emph{non-menubar} toolkit pop-up menus have
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
241 @samp{menu*} instead of @samp{pane.menubar}. For example, to specify
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
242 the font @samp{8x16} for the pop-up menu items, write this:
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
243
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
244 @example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
245 Emacs.menu*.font: 8x16
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
246 @end example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
247
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
248 @noindent
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
249 For dialog boxes, use @samp{dialog*}:
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
250
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
251 @example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
252 Emacs.dialog*.font: 8x16
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
253 @end example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
254
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
255 @noindent
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
256 The Lucid menus can display multilingual text in your locale. For
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
257 more information about fontsets see the man page for
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
258 @code{XCreateFontSet}. To enable multilingual menu text you specify a
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
259 @code{fontSet} resource instead of the font resource. If both
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
260 @code{font} and @code{fontSet} resources are specified, the
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
261 @code{fontSet} resource is used.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
262
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
263 Thus, to specify @samp{-*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*}
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
264 for both the popup and menu bar menus, write this:
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
265
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
266 @example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
267 Emacs*menu*fontSet: -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
268 @end example
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
269
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
270 @noindent
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
271 The @samp{*menu*} as a wildcard matches @samp{pane.menubar} and
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
272 @samp{menu@dots{}}.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
273
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
274 Experience shows that on some systems you may need to add
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
275 @samp{shell.}@: before the @samp{pane.menubar} or @samp{menu*}. On
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
276 some other systems, you must not add @samp{shell.}. The generic wildcard
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
277 approach should work on both kinds of systems.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
278
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
279 Here is a list of the specific resources for menu bars and pop-up menus:
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
280
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
281 @table @code
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
282 @item font
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
283 Font for menu item text.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
284 @item fontSet
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
285 Fontset for menu item text.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
286 @item foreground
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
287 Color of the foreground.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
288 @item background
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
289 Color of the background.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
290 @item buttonForeground
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
291 In the menu bar, the color of the foreground for a selected item.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
292 @item margin
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
293 The margin of the menu bar, in characters. Default is 1.
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
294 @end table
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
295
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
296 @node GTK resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
297 @appendixsec GTK resources
174ade98e30b New file, a shortened version of xresmini.texi.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
298
70510
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
299 The most common way to customize the GTK widgets Emacs uses (menus, dialogs
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
300 tool bars and scroll bars) is by choosing an appropriate theme, for example
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
301 with the GNOME theme selector. You can also do Emacs specific customization
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
302 by inserting GTK style directives in the file @file{~/.emacs.d/gtkrc}. Some GTK
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
303 themes ignore customizations in @file{~/.emacs.d/gtkrc} so not everything
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
304 works with all themes. To customize Emacs font, background, faces, etc., use
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
305 the normal X resources (@pxref{Resources}). We will present some examples of
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
306 customizations here, but for a more detailed description, see the online manual.
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
307
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
308 The first example is just one line. It changes the font on all GTK widgets
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
309 to courier with size 12:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
310
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
311 @smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
312 gtk-font-name = "courier 12"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
313 @end smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
314
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
315 The thing to note is that the font name is not an X font name, like
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
316 -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*, but a Pango font name. A Pango
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
317 font name is basically of the format "family style size", where the style
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
318 is optional as in the case above. A name with a style could be for example:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
319
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
320 @smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
321 gtk-font-name = "helvetica bold 10"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
322 @end smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
323
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
324 To customize widgets you first define a style and then apply the style to
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
325 the widgets. Here is an example that sets the font for menus, but not
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
326 for other widgets:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
327
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
328 @smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
329 # @r{Define the style @samp{menufont}.}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
330 style "menufont"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
331 @{
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
332 font_name = "helvetica bold 14" # This is a Pango font name
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
333 @}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
334
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
335 # @r{Specify that widget type @samp{*emacs-menuitem*} uses @samp{menufont}.}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
336 widget "*emacs-menuitem*" style "menufont"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
337 @end smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
338
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
339 The widget name in this example contains wildcards, so the style will be
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
340 applied to all widgets that match "*emacs-menuitem*". The widgets are
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
341 named by the way they are contained, from the outer widget to the inner widget.
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
342 So to apply the style "my_style" (not shown) with the full, absolute name, for
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
343 the menubar and the scroll bar in Emacs we use:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
344
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
345 @smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
346 widget "Emacs.pane.menubar" style "my_style"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
347 widget "Emacs.pane.emacs.verticalScrollBar" style "my_style"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
348 @end smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
349
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
350 But to aoid having to type it all, wildcards are often used. @samp{*}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
351 matches zero or more characters and @samp{?} matches one character. So "*"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
352 matches all widgets.
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
353
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
354 Each widget has a class (for example GtkMenuItem) and a name (emacs-menuitem).
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
355 You can assign styles by name or by class. In this example we have used the
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
356 class:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
357
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
358 @smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
359 style "menufont"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
360 @{
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
361 font_name = "helvetica bold 14"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
362 @}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
363
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
364 widget_class "*GtkMenuBar" style "menufont"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
365 @end smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
366
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
367 @noindent
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
368 The names and classes for the GTK widgets Emacs uses are:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
369
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
370 @multitable {@code{verticalScrollbar plus}} {@code{GtkFileSelection} and some}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
371 @item @code{emacs-filedialog}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
372 @tab @code{GtkFileSelection}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
373 @item @code{emacs-dialog}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
374 @tab @code{GtkDialog}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
375 @item @code{Emacs}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
376 @tab @code{GtkWindow}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
377 @item @code{pane}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
378 @tab @code{GtkVHbox}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
379 @item @code{emacs}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
380 @tab @code{GtkFixed}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
381 @item @code{verticalScrollBar}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
382 @tab @code{GtkVScrollbar}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
383 @item @code{emacs-toolbar}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
384 @tab @code{GtkToolbar}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
385 @item @code{menubar}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
386 @tab @code{GtkMenuBar}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
387 @item @code{emacs-menuitem}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
388 @tab anything in menus
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
389 @end multitable
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
390
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
391 GTK absolute names are quite strange when it comes to menus
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
392 and dialogs. The names do not start with @samp{Emacs}, as they are
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
393 free-standing windows and not contained (in the GTK sense) by the
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
394 Emacs GtkWindow. To customize the dialogs and menus, use wildcards like this:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
395
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
396 @smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
397 widget "*emacs-dialog*" style "my_dialog_style"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
398 widget "*emacs-filedialog* style "my_file_style"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
399 widget "*emacs-menuitem* style "my_menu_style"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
400 @end smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
401
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
402 If you specify a customization in @file{~/.emacs.d/gtkrc}, then it
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
403 automatically applies only to Emacs, since other programs don't read
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
404 that file. For example, the drop down menu in the file dialog can not
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
405 be customized by any absolute widget name, only by an absolute class
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
406 name. This is because the widgets in the drop down menu do not
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
407 have names and the menu is not contained in the Emacs GtkWindow. To
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
408 have all menus in Emacs look the same, use this in
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
409 @file{~/.emacs.d/gtkrc}:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
410
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
411 @smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
412 widget_class "*Menu*" style "my_menu_style"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
413 @end smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
414
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
415 Here is a more elaborate example, showing how to change the parts of
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
416 the scroll bar:
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
417
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
418 @smallexample
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
419 style "scroll"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
420 @{
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
421 fg[NORMAL] = "red"@ @ @ @ @ # @r{The arrow color.}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
422 bg[NORMAL] = "yellow"@ @ # @r{The thumb and background around the arrow.}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
423 bg[ACTIVE] = "blue"@ @ @ @ # @r{The trough color.}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
424 bg[PRELIGHT] = "white"@ # @r{The thumb color when the mouse is over it.}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
425 @}
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
426
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
427 widget "*verticalScrollBar*" style "scroll"
fc945cb968d9 Added GTK part
Jan Djärv <jan.h.d@swipnet.se>
parents: 70476
diff changeset
428 @end smallexample
70207
e5703d5024e4 Add arch tagline
Miles Bader <miles@gnu.org>
parents: 70192
diff changeset
429
e5703d5024e4 Add arch tagline
Miles Bader <miles@gnu.org>
parents: 70192
diff changeset
430 @ignore
e5703d5024e4 Add arch tagline
Miles Bader <miles@gnu.org>
parents: 70192
diff changeset
431 arch-tag: e1856f29-2482-42c0-a990-233cdccd1f21
e5703d5024e4 Add arch tagline
Miles Bader <miles@gnu.org>
parents: 70192
diff changeset
432 @end ignore