annotate doc/emacs/xresources.texi @ 97043:9592c50233ab remove-carbon

Remove support for Mac Carbon. * mactoolbox.c: * macterm.h: * macterm.c: * macselect.c: * macmenu.c: * macgui.h: * macfns.c: * mac.c: Remove file. * s/darwin.h: * m/intel386.h: * xfaces.c: * xdisp.c: * window.c: * tparam.c: * termhooks.h: * termcap.c: * term.c: * syssignal.h: * sysselect.h: * sysdep.c: * process.c: * lread.c: * lisp.h: * keyboard.c: * image.c: * fringe.c: * frame.h: * frame.c: * fontset.c: * font.h: * font.c: * fns.c: * fileio.c: * emacs.c: * dispnew.c: * dispextern.h: * config.in: * atimer.c: * Makefile.in: Remove code for Carbon * erc.el: Remove code for Carbon. Remove support for Mac Carbon. * term/mac-win.el: Remove file * international/mule-cmds.el: * version.el: * startup.el: * simple.el: * mwheel.el: * mouse.el: * loadup.el: * isearch.el: * info.el: * frame.el: * faces.el: * disp-table.el: * cus-start.el: * cus-face.el: * cus-edit.el: * Makefile.in: Remove code for Carbon. Remove support for Mac Carbon. * makefile.w32-in: * emacsclient.c: Remove code for Carbon. * PROBLEMS: * MACHINES: Remove mentions of Mac Carbon. * ns-emacs.texi: * faq.texi: Remove mentions of Mac Carbon. * os.texi: * frames.texi: * display.texi: Remove mentions of Mac Carbon. * xresources.texi: Remove mentions of Mac Carbon. * make-tarball.txt: * admin.el: * FOR-RELEASE: * CPP-DEFINES: Remove mentions of Mac Carbon. Remove support for Mac Carbon. * mac: Remove directory. * make-dist: * configure.in: * README: * Makefile.in: * INSTALL: Remove code for Carbon. * configure: Regenerate.
author Dan Nicolaescu <dann@ics.uci.edu>
date Sun, 27 Jul 2008 18:24:48 +0000
parents 5d58981e6690
children cb5d2387102c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
84274
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1 @c This is part of the Emacs manual.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
2 @c Copyright (C) 1987, 1993, 1994, 1995, 1997, 2001, 2002, 2003,
87903
5d58981e6690 Merge from emacs--rel--22
Miles Bader <miles@gnu.org>
parents: 84274
diff changeset
3 @c 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
84274
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
4 @c See file emacs.texi for copying conditions.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
5 @node X Resources, Antinews, Emacs Invocation, Top
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
6 @appendix X Options and Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
7
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
8 You can customize some X-related aspects of Emacs behavior using X
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
9 resources, as is usual for programs that use X. On MS-Windows, you
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
10 can customize some of the same aspects using the system registry.
97043
9592c50233ab Remove support for Mac Carbon.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 87903
diff changeset
11 @xref{MS-Windows Registry}.
84274
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
12
97043
9592c50233ab Remove support for Mac Carbon.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 87903
diff changeset
13 o When Emacs is built using an ``X toolkit'', such as Lucid or
84274
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
14 LessTif, you need to use X resources to customize the appearance of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
15 the widgets, including the menu-bar, scroll-bar, and dialog boxes.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
16 This is because the libraries that implement these don't provide for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
17 customization through Emacs. GTK+ widgets use a separate system of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
18 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
19 ``GTK resources'', which we will also describe.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
20 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
21 @iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
22 ``GTK resources.'' In this chapter we describe the most commonly used
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
23 resource specifications. For full documentation, see the online
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
24 manual.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
25
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
26 @c Add xref for LessTif/Motif menu resources.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
27 @end iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
28
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
29
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
30 @menu
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
31 * Resources:: Using X resources with Emacs (in general).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
32 * Table of Resources:: Table of specific X resources that affect Emacs.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
33 * Face Resources:: X resources for customizing faces.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
34 * Lucid Resources:: X resources for Lucid menus.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
35 * LessTif Resources:: X resources for LessTif and Motif menus.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
36 * GTK resources:: Resources for GTK widgets.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
37 @end menu
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
38
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
39 @node Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
40 @appendixsec X Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
41 @cindex resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
42 @cindex X resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
43 @cindex @file{~/.Xdefaults} file
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
44 @cindex @file{~/.Xresources} file
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
45
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
46 Programs running under the X Window System organize their user
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
47 options under a hierarchy of classes and resources. You can specify
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
48 default values for these options in your X resources file, usually
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
49 named @file{~/.Xdefaults} or @file{~/.Xresources}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
50 If changes in @file{~/.Xdefaults} do not
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
51 take effect, it is because your X server stores its own list of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
52 resources; to update them, use the shell command @command{xrdb}---for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
53 instance, @samp{xrdb ~/.Xdefaults}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
54
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
55 Each line in the file specifies a value for one option or for a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
56 collection of related options, for one program or for several programs
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
57 (optionally even for all programs).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
58
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
59 @cindex Registry (MS-Windows)
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
60 MS-Windows systems do not support @file{~/.Xdefaults} files, so
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
61 instead Emacs compiled for Windows looks for X resources in the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
62 Windows Registry, first under the key
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
63 @samp{HKEY_CURRENT_USER\SOFTWARE\GNU\Emacs} and then under the key
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
64 @samp{HKEY_LOCAL_MACHINE\SOFTWARE\GNU\Emacs}. The menu and scroll
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
65 bars are native widgets on MS-Windows, so they are only customizable
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
66 via the system-wide settings in the Display Control Panel. You can
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
67 also set resources using the @samp{-xrm} command line option (see
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
68 below.)
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
69
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
70 @iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
71 Applications such as Emacs look for resources with specific names
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
72 and their particular meanings. Case distinctions are significant in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
73 these names. Each resource specification in @file{~/.Xdefaults}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
74 states the name of the program and the name of the resource. For
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
75 Emacs, the program name is @samp{Emacs}. It looks like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
76
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
77 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
78 Emacs.borderWidth: 2
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
79 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
80 @end iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
81 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
82 Programs define named resources with particular meanings. They also
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
83 define how to group resources into named classes. For instance, in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
84 Emacs, the @samp{internalBorder} resource controls the width of the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
85 internal border, and the @samp{borderWidth} resource controls the width
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
86 of the external border. Both of these resources are part of the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
87 @samp{BorderWidth} class. Case distinctions are significant in these
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
88 names.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
89
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
90 Every resource definition is associated with a specific program
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
91 name---the name of the executable file that you ran. For Emacs, that
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
92 is normally @samp{emacs}. To specify a definition for all instances
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
93 of Emacs, regardless of their names, use @samp{Emacs}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
94
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
95 In @file{~/.Xdefaults}, you can specify a value for a single resource
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
96 on one line, like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
97
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
98 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
99 emacs.borderWidth: 2
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
100 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
101
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
102 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
103 Or you can use a class name to specify the same value for all resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
104 in that class. Here's an example:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
105
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
106 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
107 emacs.BorderWidth: 2
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
108 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
109
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
110 If you specify a value for a class, it becomes the default for all
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
111 resources in that class. You can specify values for individual
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
112 resources as well; these override the class value, for those particular
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
113 resources. Thus, this example specifies 2 as the default width for all
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
114 borders, but overrides this value with 4 for the external border:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
115
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
116 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
117 emacs.BorderWidth: 2
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
118 emacs.borderWidth: 4
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
119 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
120 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
121
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
122 The order in which the lines appear in the file does not matter.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
123 Also, command-line options always override the X resources file.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
124
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
125 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
126 Here is a list of X command-line options and their corresponding
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
127 resource names.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
128
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
129 @table @samp
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
130 @item -name @var{name}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
131 @opindex --name
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
132 @itemx --name=@var{name}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
133 @cindex resource name, command-line argument
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
134 Use @var{name} as the resource name (and the title) for the initial
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
135 Emacs frame. This option does not affect subsequent frames, but Lisp
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
136 programs can specify frame names when they create frames.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
137
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
138 If you don't specify this option, the default is to use the Emacs
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
139 executable's name as the resource name.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
140
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
141 @item -xrm @var{resource-values}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
142 @opindex --xrm
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
143 @itemx --xrm=@var{resource-values}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
144 @cindex resource values, command-line argument
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
145 Specify X resource values for this Emacs job (see below).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
146 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
147
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
148 For consistency, @samp{-name} also specifies the name to use for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
149 other resource values that do not belong to any particular frame.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
150
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
151 The resources that name Emacs invocations also belong to a class; its
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
152 name is @samp{Emacs}. If you write @samp{Emacs} instead of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
153 @samp{emacs}, the resource applies to all frames in all Emacs jobs,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
154 regardless of frame titles and regardless of the name of the executable
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
155 file. Here is an example:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
156
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
157 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
158 Emacs.BorderWidth: 2
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
159 Emacs.borderWidth: 4
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
160 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
161
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
162 You can specify a string of additional resource values for Emacs to
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
163 use with the command line option @samp{-xrm @var{resources}}. The text
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
164 @var{resources} should have the same format that you would use inside a file
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
165 of X resources. To include multiple resource specifications in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
166 @var{resources}, put a newline between them, just as you would in a file.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
167 You can also use @samp{#include "@var{filename}"} to include a file full
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
168 of resource specifications. Resource values specified with @samp{-xrm}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
169 take precedence over all other resource specifications.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
170
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
171 One way to experiment with the effect of different resource settings
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
172 is to use the @code{editres} program. Select @samp{Get Tree} from the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
173 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
174 @iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
175 You can experiment with the effect of different resource settings
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
176 with the @code{editres} program. Select @samp{Get Tree} from the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
177 @end iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
178 @samp{Commands} menu, then click on an Emacs frame. This will display
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
179 a tree showing the structure of X toolkit widgets used in an Emacs
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
180 frame. Select one of them, such as @samp{menubar}, then select
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
181 @samp{Show Resource Box} from the @samp{Commands} menu. This displays
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
182 a list of all the meaningful X resources for that widget, and allows
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
183 you to edit them. Changes take effect when you click on the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
184 @samp{Apply} button. (See the @code{editres} man page for more
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
185 details.)
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
186
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
187 @node Table of Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
188 @appendixsec Table of X Resources for Emacs
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
189
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
190 This table lists the resource names that designate options for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
191 Emacs, not counting those for the appearance of the menu bar, each
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
192 with the class that it belongs to:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
193
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
194 @table @asis
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
195 @item @code{background} (class @code{Background})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
196 Background color name.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
197
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
198 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
199 @item @code{bitmapIcon} (class @code{BitmapIcon})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
200 Use a bitmap icon (a picture of a gnu) if @samp{on}, let the window
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
201 manager choose an icon if @samp{off}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
202 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
203
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
204 @item @code{borderColor} (class @code{BorderColor})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
205 Color name for the external border.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
206
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
207 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
208 @item @code{borderWidth} (class @code{BorderWidth})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
209 Width in pixels of the external border.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
210 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
211
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
212 @item @code{cursorColor} (class @code{Foreground})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
213 Color name for text cursor (point).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
214
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
215 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
216 @item @code{cursorBlink} (class @code{CursorBlink})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
217 Specifies whether to make the cursor blink. The default is @samp{on}. Use
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
218 @samp{off} or @samp{false} to turn cursor blinking off.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
219 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
220
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
221 @item @code{font} (class @code{Font})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
222 Font name (or fontset name, @pxref{Fontsets}) for @code{default} font.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
223
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
224 @item @code{foreground} (class @code{Foreground})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
225 Color name for text.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
226
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
227 @item @code{geometry} (class @code{Geometry})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
228 Window size and position. Be careful not to specify this resource as
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
229 @samp{emacs*geometry}, because that may affect individual menus as well
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
230 as the Emacs frame itself.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
231
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
232 If this resource specifies a position, that position applies only to the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
233 initial Emacs frame (or, in the case of a resource for a specific frame
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
234 name, only that frame). However, the size, if specified here, applies to
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
235 all frames.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
236
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
237 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
238 @item @code{fullscreen} (class @code{Fullscreen})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
239 The desired fullscreen size. The value can be one of @code{fullboth},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
240 @code{fullwidth} or @code{fullheight}, which correspond to
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
241 the command-line options @samp{-fs}, @samp{-fw}, and @samp{-fh}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
242 (@pxref{Window Size X}).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
243
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
244 Note that this applies to the initial frame only.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
245 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
246
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
247 @item @code{iconName} (class @code{Title})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
248 Name to display in the icon.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
249
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
250 @item @code{internalBorder} (class @code{BorderWidth})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
251 Width in pixels of the internal border.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
252
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
253 @item @code{lineSpacing} (class @code{LineSpacing})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
254 @cindex line spacing
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
255 @cindex leading
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
256 Additional space (@dfn{leading}) between lines, in pixels.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
257
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
258 @item @code{menuBar} (class @code{MenuBar})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
259 @cindex menu bar
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
260 Give frames menu bars if @samp{on}; don't have menu bars if @samp{off}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
261 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
262 @xref{Lucid Resources}, and @ref{LessTif Resources},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
263 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
264 @iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
265 @xref{Lucid Resources},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
266 @end iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
267 for how to control the appearance of the menu bar if you have one.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
268
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
269 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
270 @item @code{minibuffer} (class @code{Minibuffer})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
271 If @samp{none}, don't make a minibuffer in this frame.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
272 It will use a separate minibuffer frame instead.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
273
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
274 @item @code{paneFont} (class @code{Font})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
275 @cindex font for menus
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
276 Font name for menu pane titles, in non-toolkit versions of Emacs.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
277 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
278
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
279 @item @code{pointerColor} (class @code{Foreground})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
280 Color of the mouse cursor.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
281
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
282 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
283 @item @code{privateColormap} (class @code{PrivateColormap})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
284 If @samp{on}, use a private color map, in the case where the ``default
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
285 visual'' of class PseudoColor and Emacs is using it.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
286
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
287 @item @code{reverseVideo} (class @code{ReverseVideo})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
288 Switch foreground and background default colors if @samp{on}, use colors as
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
289 specified if @samp{off}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
290 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
291
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
292 @item @code{screenGamma} (class @code{ScreenGamma})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
293 @cindex gamma correction
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
294 Gamma correction for colors, equivalent to the frame parameter
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
295 @code{screen-gamma}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
296
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
297 @item @code{scrollBarWidth} (class @code{ScrollBarWidth})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
298 @cindex scrollbar width
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
299 The scroll bar width in pixels, equivalent to the frame parameter
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
300 @code{scroll-bar-width}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
301
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
302 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
303 @item @code{selectionFont} (class @code{SelectionFont})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
304 Font name for pop-up menu items, in non-toolkit versions of Emacs. (For
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
305 toolkit versions, see @ref{Lucid Resources}, also see @ref{LessTif
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
306 Resources}.)
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
307
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
308 @item @code{selectionTimeout} (class @code{SelectionTimeout})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
309 Number of milliseconds to wait for a selection reply.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
310 If the selection owner doesn't reply in this time, we give up.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
311 A value of 0 means wait as long as necessary.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
312
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
313 @item @code{synchronous} (class @code{Synchronous})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
314 @cindex debugging X problems
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
315 @cindex synchronous X mode
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
316 Run Emacs in synchronous mode if @samp{on}. Synchronous mode is
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
317 useful for debugging X problems.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
318 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
319
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
320 @item @code{title} (class @code{Title})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
321 Name to display in the title bar of the initial Emacs frame.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
322
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
323 @item @code{toolBar} (class @code{ToolBar})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
324 @cindex tool bar
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
325 Number of lines to reserve for the tool bar. A zero value suppresses
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
326 the tool bar. If the value is non-zero and
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
327 @code{auto-resize-tool-bars} is non-@code{nil}, the tool bar's size
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
328 will be changed automatically so that all tool bar items are visible.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
329 If the value of @code{auto-resize-tool-bars} is @code{grow-only},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
330 the tool bar expands automatically, but does not contract automatically.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
331 To contract the tool bar, you must redraw the frame by entering @kbd{C-l}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
332
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
333 @item @code{useXIM} (class @code{UseXIM})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
334 @cindex XIM
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
335 @cindex X input methods
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
336 @cindex input methods, X
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
337 Turn off use of X input methods (XIM) if @samp{false} or @samp{off}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
338 This is only relevant if your Emacs is actually built with XIM
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
339 support. It is potentially useful to turn off XIM for efficiency,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
340 especially slow X client/server links.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
341
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
342 @item @code{verticalScrollBars} (class @code{ScrollBars})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
343 Give frames scroll bars if @samp{on}; don't have scroll bars if
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
344 @samp{off}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
345
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
346 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
347 @item @code{visualClass} (class @code{VisualClass})
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
348 Specify the ``visual'' that X should use. This tells X how to handle
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
349 colors.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
350
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
351 The value should start with one of @samp{TrueColor},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
352 @samp{PseudoColor}, @samp{DirectColor}, @samp{StaticColor},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
353 @samp{GrayScale}, and @samp{StaticGray}, followed by
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
354 @samp{-@var{depth}}, where @var{depth} is the number of color planes.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
355 Most terminals only allow a few ``visuals,'' and the @samp{dpyinfo}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
356 program outputs information saying which ones.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
357 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
358 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
359
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
360 @node Face Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
361 @appendixsec X Resources for Faces
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
362
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
363 You can use resources to customize the appearance of particular
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
364 faces (@pxref{Faces}):
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
365
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
366 @table @code
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
367 @item @var{face}.attributeForeground
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
368 Foreground color for face @var{face}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
369 @item @var{face}.attributeBackground
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
370 Background color for face @var{face}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
371 @item @var{face}.attributeUnderline
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
372 Underline flag for face @var{face}. Use @samp{on} or @samp{true} for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
373 yes.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
374 @item @var{face}.attributeStrikeThrough
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
375 @itemx @var{face}.attributeOverline
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
376 @itemx @var{face}.attributeBox
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
377 @itemx @var{face}.attributeInverse
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
378 Likewise, for other boolean font attributes.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
379 @item @var{face}.attributeStipple
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
380 The name of a pixmap data file to use for the stipple pattern, or
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
381 @code{false} to not use stipple for the face @var{face}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
382 @item @var{face}.attributeBackgroundPixmap
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
383 The background pixmap for the face @var{face}. Should be a name of a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
384 pixmap file or @code{false}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
385 @item @var{face}.attributeFont
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
386 Font name (full XFD name or valid X abbreviation) for face @var{face}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
387 Instead of this, you can specify the font through separate attributes.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
388 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
389
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
390 Instead of using @code{attributeFont} to specify a font name, you can
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
391 select a font through these separate attributes:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
392
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
393 @table @code
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
394 @item @var{face}.attributeFamily
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
395 Font family for face @var{face}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
396 @item @var{face}.attributeHeight
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
397 Height of the font to use for face @var{face}: either an integer
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
398 specifying the height in units of 1/10@dmn{pt}, or a floating point
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
399 number that specifies a scale factor to scale the underlying face's
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
400 default font, or a function to be called with the default height which
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
401 will return a new height.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
402 @item @var{face}.attributeWidth
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
403 @itemx @var{face}.attributeWeight
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
404 @itemx @var{face}.attributeSlant
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
405 Each of these resources corresponds to a like-named font attribute,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
406 and you write the resource value the same as the symbol you would use
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
407 for the font attribute value.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
408 @item @var{face}.attributeBold
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
409 Bold flag for face @var{face}---instead of @code{attributeWeight}. Use @samp{on} or @samp{true} for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
410 yes.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
411 @item @var{face}.attributeItalic
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
412 Italic flag for face @var{face}---instead of @code{attributeSlant}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
413 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
414
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
415 @node Lucid Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
416 @appendixsec Lucid Menu X Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
417 @cindex Menu X Resources (Lucid widgets)
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
418 @cindex Lucid Widget X Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
419
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
420 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
421 If the Emacs installed at your site was built to use the X toolkit
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
422 with the Lucid menu widgets, then the menu bar is a separate widget and
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
423 has its own resources. The resource names contain @samp{pane.menubar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
424 (following, as always, the name of the Emacs invocation, or @samp{Emacs},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
425 which stands for all Emacs invocations). Specify them like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
426
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
427 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
428 Emacs.pane.menubar.@var{resource}: @var{value}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
429 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
430
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
431 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
432 For example, to specify the font @samp{8x16} for the menu-bar items,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
433 write this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
434 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
435 @iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
436 If the Emacs installed at your site was built to use the X toolkit
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
437 with the Lucid menu widgets, then the menu bar is a separate widget
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
438 and has its own resources. The resource specifications start with
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
439 @samp{Emacs.pane.menubar}---for instance, to specify the font
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
440 @samp{8x16} for the menu-bar items, write this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
441 @end iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
442
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
443 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
444 Emacs.pane.menubar.font: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
445 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
446
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
447 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
448 Resources for @emph{non-menubar} toolkit pop-up menus have
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
449 @samp{menu*} instead of @samp{pane.menubar}. For example, to specify
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
450 the font @samp{8x16} for the pop-up menu items, write this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
451
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
452 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
453 Emacs.menu*.font: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
454 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
455
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
456 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
457 For dialog boxes, use @samp{dialog*}:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
458
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
459 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
460 Emacs.dialog*.font: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
461 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
462
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
463 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
464 The Lucid menus can display multilingual text in your locale. For
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
465 more information about fontsets see the man page for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
466 @code{XCreateFontSet}. To enable multilingual menu text you specify a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
467 @code{fontSet} resource instead of the font resource. If both
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
468 @code{font} and @code{fontSet} resources are specified, the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
469 @code{fontSet} resource is used.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
470
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
471 Thus, to specify @samp{-*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
472 for both the popup and menu bar menus, write this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
473
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
474 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
475 Emacs*menu*fontSet: -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
476 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
477
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
478 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
479 The @samp{*menu*} as a wildcard matches @samp{pane.menubar} and
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
480 @samp{menu@dots{}}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
481
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
482 Experience shows that on some systems you may need to add
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
483 @samp{shell.}@: before the @samp{pane.menubar} or @samp{menu*}. On
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
484 some other systems, you must not add @samp{shell.}. The generic wildcard
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
485 approach should work on both kinds of systems.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
486
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
487 Here is a list of the specific resources for menu bars and pop-up menus:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
488
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
489 @table @code
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
490 @item font
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
491 Font for menu item text.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
492 @item fontSet
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
493 Fontset for menu item text.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
494 @item foreground
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
495 Color of the foreground.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
496 @item background
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
497 Color of the background.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
498 @item buttonForeground
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
499 In the menu bar, the color of the foreground for a selected item.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
500 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
501 @item horizontalSpacing
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
502 Horizontal spacing in pixels between items. Default is 3.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
503 @item verticalSpacing
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
504 Vertical spacing in pixels between items. Default is 2.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
505 @item arrowSpacing
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
506 Horizontal spacing between the arrow (which indicates a submenu) and
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
507 the associated text. Default is 10.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
508 @item shadowThickness
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
509 Thickness of shadow line around the widget. Default is 1.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
510
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
511 Also determines the thickness of shadow lines around other objects,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
512 for instance 3D buttons and arrows. If you have the impression that
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
513 the arrows in the menus do not stand out clearly enough or that the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
514 difference between ``in'' and ``out'' buttons is difficult to see, set
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
515 this to 2. If you have no problems with visibility, the default
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
516 probably looks better. The background color may also have some effect
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
517 on the contrast.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
518 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
519 @item margin
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
520 The margin of the menu bar, in characters. Default is 1.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
521 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
522
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
523 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
524 @node LessTif Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
525 @appendixsec LessTif Menu X Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
526 @cindex Menu X Resources (LessTif widgets)
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
527 @cindex LessTif Widget X Resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
528
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
529 If the Emacs installed at your site was built to use the X toolkit
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
530 with the LessTif or Motif widgets, then the menu bar, the dialog
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
531 boxes, the pop-up menus, and the file-selection box are separate
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
532 widgets and have their own resources.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
533
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
534 The resource names for the menu bar contain @samp{pane.menubar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
535 (following, as always, the name of the Emacs invocation, or
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
536 @samp{Emacs}, which stands for all Emacs invocations). Specify them
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
537 like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
538
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
539 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
540 Emacs.pane.menubar.@var{subwidget}.@var{resource}: @var{value}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
541 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
542
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
543 Each individual string in the menu bar is a subwidget; the subwidget's
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
544 name is the same as the menu item string. For example, the word
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
545 @samp{File} in the menu bar is part of a subwidget named
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
546 @samp{emacs.pane.menubar.File}. Most likely, you want to specify the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
547 same resources for the whole menu bar. To do this, use @samp{*} instead
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
548 of a specific subwidget name. For example, to specify the font
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
549 @samp{8x16} for the menu-bar items, write this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
550
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
551 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
552 Emacs.pane.menubar.*.fontList: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
553 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
554
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
555 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
556 This also specifies the resource value for submenus.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
557
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
558 Each item in a submenu in the menu bar also has its own name for X
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
559 resources; for example, the @samp{File} submenu has an item named
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
560 @samp{Save (current buffer)}. A resource specification for a submenu
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
561 item looks like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
562
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
563 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
564 Emacs.pane.menubar.popup_*.@var{menu}.@var{item}.@var{resource}: @var{value}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
565 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
566
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
567 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
568 For example, here's how to specify the font for the @samp{Save (current
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
569 buffer)} item:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
570
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
571 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
572 Emacs.pane.menubar.popup_*.File.Save (current buffer).fontList: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
573 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
574
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
575 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
576 For an item in a second-level submenu, such as @samp{Complete Word}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
577 under @samp{Spell Checking} under @samp{Tools}, the resource fits this
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
578 template:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
579
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
580 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
581 Emacs.pane.menubar.popup_*.popup_*.@var{menu}.@var{resource}: @var{value}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
582 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
583
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
584 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
585 For example,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
586
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
587 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
588 Emacs.pane.menubar.popup_*.popup_*.Spell Checking.Complete Word: @var{value}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
589 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
590
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
591 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
592 (This should be one long line.)
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
593
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
594 It's impossible to specify a resource for all the menu-bar items
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
595 without also specifying it for the submenus as well. So if you want the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
596 submenu items to look different from the menu bar itself, you must ask
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
597 for that in two steps. First, specify the resource for all of them;
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
598 then, override the value for submenus alone. Here is an example:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
599
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
600 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
601 Emacs.pane.menubar.*.fontList: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
602 Emacs.pane.menubar.popup_*.fontList: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
603 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
604
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
605 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
606 For LessTif pop-up menus, use @samp{menu*} instead of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
607 @samp{pane.menubar}. For example, to specify the font @samp{8x16} for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
608 the pop-up menu items, write this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
609
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
610 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
611 Emacs.menu*.fontList: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
612 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
613
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
614 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
615 For LessTif dialog boxes, use @samp{dialog} instead of @samp{menu}:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
616
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
617 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
618 Emacs.dialog*.fontList: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
619 Emacs.dialog*.foreground: hotpink
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
620 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
621
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
622 To specify resources for the LessTif file-selection box, use
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
623 @samp{fsb*}, like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
624
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
625 @example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
626 Emacs.fsb*.fontList: 8x16
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
627 @end example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
628
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
629 @iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
630 @medbreak
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
631 @end iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
632 Here is a list of the specific resources for LessTif menu bars and
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
633 pop-up menus:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
634
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
635 @table @code
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
636 @item armColor
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
637 The color to show in an armed button.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
638 @item fontList
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
639 The font to use.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
640 @item marginBottom
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
641 @itemx marginHeight
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
642 @itemx marginLeft
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
643 @itemx marginRight
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
644 @itemx marginTop
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
645 @itemx marginWidth
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
646 Amount of space to leave around the item, within the border.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
647 @item borderWidth
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
648 The width of the border around the menu item, on all sides.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
649 @item shadowThickness
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
650 The width of the border shadow.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
651 @item bottomShadowColor
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
652 The color for the border shadow, on the bottom and the right.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
653 @item topShadowColor
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
654 The color for the border shadow, on the top and the left.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
655 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
656 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
657
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
658
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
659 @node GTK resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
660 @appendixsec GTK resources
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
661 @iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
662 The most common way to customize the GTK widgets Emacs uses (menus, dialogs
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
663 tool bars and scroll bars) is by choosing an appropriate theme, for example
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
664 with the GNOME theme selector. You can also do Emacs specific customization
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
665 by inserting GTK style directives in the file @file{~/.emacs.d/gtkrc}. Some GTK
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
666 themes ignore customizations in @file{~/.emacs.d/gtkrc} so not everything
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
667 works with all themes. To customize Emacs font, background, faces, etc., use
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
668 the normal X resources (@pxref{Resources}). We will present some examples of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
669 customizations here, but for a more detailed description, see the online manual
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
670
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
671 The first example is just one line. It changes the font on all GTK widgets
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
672 to courier with size 12:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
673
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
674 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
675 gtk-font-name = "courier 12"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
676 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
677
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
678 The thing to note is that the font name is not an X font name, like
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
679 -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*, but a Pango font name. A Pango
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
680 font name is basically of the format "family style size", where the style
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
681 is optional as in the case above. A name with a style could be for example:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
682
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
683 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
684 gtk-font-name = "helvetica bold 10"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
685 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
686
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
687 To customize widgets you first define a style and then apply the style to
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
688 the widgets. Here is an example that sets the font for menus, but not
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
689 for other widgets:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
690
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
691 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
692 # @r{Define the style @samp{menufont}.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
693 style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
694 @{
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
695 font_name = "helvetica bold 14" # This is a Pango font name
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
696 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
697
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
698 # @r{Specify that widget type @samp{*emacs-menuitem*} uses @samp{menufont}.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
699 widget "*emacs-menuitem*" style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
700 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
701
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
702 The widget name in this example contains wildcards, so the style will be
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
703 applied to all widgets that match "*emacs-menuitem*". The widgets are
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
704 named by the way they are contained, from the outer widget to the inner widget.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
705 So to apply the style "my_style" (not shown) with the full, absolute name, for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
706 the menubar and the scroll bar in Emacs we use:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
707
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
708 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
709 widget "Emacs.pane.menubar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
710 widget "Emacs.pane.emacs.verticalScrollBar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
711 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
712
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
713 But to avoid having to type it all, wildcards are often used. @samp{*}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
714 matches zero or more characters and @samp{?} matches one character. So "*"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
715 matches all widgets.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
716
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
717 Each widget has a class (for example GtkMenuItem) and a name (emacs-menuitem).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
718 You can assign styles by name or by class. In this example we have used the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
719 class:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
720
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
721 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
722 style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
723 @{
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
724 font_name = "helvetica bold 14"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
725 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
726
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
727 widget_class "*GtkMenuBar" style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
728 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
729
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
730 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
731 The names and classes for the GTK widgets Emacs uses are:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
732
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
733 @multitable {@code{verticalScrollbar plus}} {@code{GtkFileSelection} and some}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
734 @item @code{emacs-filedialog}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
735 @tab @code{GtkFileSelection}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
736 @item @code{emacs-dialog}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
737 @tab @code{GtkDialog}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
738 @item @code{Emacs}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
739 @tab @code{GtkWindow}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
740 @item @code{pane}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
741 @tab @code{GtkVHbox}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
742 @item @code{emacs}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
743 @tab @code{GtkFixed}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
744 @item @code{verticalScrollBar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
745 @tab @code{GtkVScrollbar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
746 @item @code{emacs-toolbar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
747 @tab @code{GtkToolbar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
748 @item @code{menubar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
749 @tab @code{GtkMenuBar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
750 @item @code{emacs-menuitem}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
751 @tab anything in menus
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
752 @end multitable
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
753
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
754 GTK absolute names are quite strange when it comes to menus
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
755 and dialogs. The names do not start with @samp{Emacs}, as they are
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
756 free-standing windows and not contained (in the GTK sense) by the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
757 Emacs GtkWindow. To customize the dialogs and menus, use wildcards like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
758
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
759 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
760 widget "*emacs-dialog*" style "my_dialog_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
761 widget "*emacs-filedialog* style "my_file_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
762 widget "*emacs-menuitem* style "my_menu_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
763 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
764
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
765 If you specify a customization in @file{~/.emacs.d/gtkrc}, then it
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
766 automatically applies only to Emacs, since other programs don't read
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
767 that file. For example, the drop down menu in the file dialog can not
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
768 be customized by any absolute widget name, only by an absolute class
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
769 name. This is because the widgets in the drop down menu do not
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
770 have names and the menu is not contained in the Emacs GtkWindow. To
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
771 have all menus in Emacs look the same, use this in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
772 @file{~/.emacs.d/gtkrc}:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
773
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
774 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
775 widget_class "*Menu*" style "my_menu_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
776 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
777
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
778 Here is a more elaborate example, showing how to change the parts of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
779 the scroll bar:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
780
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
781 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
782 style "scroll"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
783 @{
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
784 fg[NORMAL] = "red"@ @ @ @ @ # @r{The arrow color.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
785 bg[NORMAL] = "yellow"@ @ # @r{The thumb and background around the arrow.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
786 bg[ACTIVE] = "blue"@ @ @ @ # @r{The trough color.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
787 bg[PRELIGHT] = "white"@ # @r{The thumb color when the mouse is over it.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
788 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
789
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
790 widget "*verticalScrollBar*" style "scroll"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
791 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
792 @end iftex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
793
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
794 @ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
795 @cindex GTK resources and customization
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
796 @cindex resource files for GTK
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
797 @cindex @file{~/.gtkrc-2.0} file
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
798 @cindex @file{~/.emacs.d/gtkrc} file
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
799
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
800 If Emacs was built to use the GTK widget set, then the menu bar, tool bar,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
801 scroll bar and the dialogs are customized with the standard GTK
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
802 customization file, @file{~/.gtkrc-2.0}, or with the Emacs specific
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
803 file @file{~/.emacs.d/gtkrc}. We recommend that you use
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
804 @file{~/.emacs.d/gtkrc} for customizations, since @file{~/.gtkrc-2.0}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
805 seems to be ignored when running GConf with GNOME. These files apply
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
806 only to GTK widget features. To customize Emacs font, background,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
807 faces, etc., use the normal X resources (@pxref{Resources}).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
808
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
809 Some GTK themes override these mechanisms, which means that using
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
810 these mechanisms will not work to customize them.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
811
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
812 In these files you first define a style and say what it means; then
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
813 you specify to apply the style to various widget types (@pxref{GTK
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
814 widget names}). Here is an example of how to change the font for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
815 Emacs menus:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
816
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
817 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
818 # @r{Define the style @samp{menufont}.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
819 style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
820 @{
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
821 font_name = "helvetica bold 14" # This is a Pango font name
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
822 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
823
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
824 # @r{Specify that widget type @samp{*emacs-menuitem*} uses @samp{menufont}.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
825 widget "*emacs-menuitem*" style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
826 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
827
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
828 Here is a more elaborate example, showing how to change the parts of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
829 the scroll bar:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
830
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
831 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
832 style "scroll"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
833 @{
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
834 fg[NORMAL] = "red"@ @ @ @ @ # @r{The arrow color.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
835 bg[NORMAL] = "yellow"@ @ # @r{The thumb and background around the arrow.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
836 bg[ACTIVE] = "blue"@ @ @ @ # @r{The trough color.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
837 bg[PRELIGHT] = "white"@ # @r{The thumb color when the mouse is over it.}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
838 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
839
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
840 widget "*verticalScrollBar*" style "scroll"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
841 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
842
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
843 There are also parameters that affect GTK as a whole. For example,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
844 the property @code{gtk-font-name} sets the default font for GTK. You
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
845 must use Pango font names (@pxref{GTK styles}). A GTK resources file
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
846 that just sets a default font looks like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
847
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
848 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
849 gtk-font-name = "courier 12"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
850 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
851
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
852 The GTK resources file is fully described in the GTK API document.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
853 This can be found in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
854 @file{@var{prefix}/share/gtk-doc/html/gtk/gtk-resource-files.html},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
855 where @file{prefix} is the directory in which the GTK libraries were
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
856 installed (usually @file{/usr} or @file{/usr/local}). You can also
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
857 find the document online, at
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
858 @uref{http://developer.gnome.org/doc/API/2.0/gtk/gtk-Resource-Files.html}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
859
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
860 @menu
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
861 * GTK widget names:: How widgets in GTK are named in general.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
862 * GTK Names in Emacs:: GTK widget names in Emacs.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
863 * GTK styles:: What can be customized in a GTK widget.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
864 @end menu
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
865
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
866 @node GTK widget names
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
867 @appendixsubsec GTK widget names
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
868 @cindex GTK widget names
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
869
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
870 A GTK widget is specified by its @dfn{widget class} and
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
871 @dfn{widget name}. The widget class is the type of the widget: for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
872 example, @code{GtkMenuBar}. The widget name is the name given to a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
873 specific widget. A widget always has a class, but need not have a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
874 name.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
875
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
876 @dfn{Absolute names} are sequences of widget names or widget
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
877 classes, corresponding to hierarchies of widgets embedded within
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
878 other widgets. For example, if a @code{GtkWindow} named @code{top}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
879 contains a @code{GtkVBox} named @code{box}, which in turn contains
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
880 a @code{GtkMenuBar} called @code{menubar}, the absolute class name
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
881 of the menu-bar widget is @code{GtkWindow.GtkVBox.GtkMenuBar}, and
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
882 its absolute widget name is @code{top.box.menubar}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
883
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
884 When assigning a style to a widget, you can use the absolute class
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
885 name or the absolute widget name.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
886
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
887 There are two commands to specify changes for widgets:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
888
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
889 @table @asis
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
890 @item @code{widget_class}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
891 specifies a style for widgets based on the absolute class name.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
892
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
893 @item @code{widget}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
894 specifies a style for widgets based on the absolute class name,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
895 or just the class.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
896 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
897
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
898 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
899 You must specify the class and the style in double-quotes, and put
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
900 these commands at the top level in the GTK customization file, like
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
901 this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
902
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
903 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
904 style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
905 @{
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
906 font_name = "helvetica bold 14"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
907 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
908
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
909 widget "top.box.menubar" style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
910 widget_class "GtkWindow.GtkVBox.GtkMenuBar" style "menufont"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
911 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
912
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
913 Matching of absolute names uses shell wildcard syntax: @samp{*}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
914 matches zero or more characters and @samp{?} matches one character.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
915 This example assigns @code{base_style} to all widgets:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
916
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
917 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
918 widget "*" style "base_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
919 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
920
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
921 Given the absolute class name @code{GtkWindow.GtkVBox.GtkMenuBar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
922 and the corresponding absolute widget name @code{top.box.menubar}, all
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
923 these examples specify @code{my_style} for the menu bar:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
924
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
925 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
926 widget_class "GtkWindow.GtkVBox.GtkMenuBar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
927 widget_class "GtkWindow.*.GtkMenuBar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
928 widget_class "*GtkMenuBar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
929 widget "top.box.menubar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
930 widget "*box*menubar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
931 widget "*menubar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
932 widget "*menu*" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
933 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
934
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
935 @node GTK Names in Emacs
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
936 @appendixsubsec GTK Widget Names in Emacs
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
937 @cindex GTK widget names
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
938 @cindex GTK widget classes
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
939
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
940 In Emacs, the top level widget for a frame is a @code{GtkWindow}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
941 that contains a @code{GtkVBox}. The @code{GtkVBox} contains the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
942 @code{GtkMenuBar} and a @code{GtkFixed} widget. The vertical scroll
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
943 bars, @code{GtkVScrollbar}, are contained in the @code{GtkFixed}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
944 widget. The text you write in Emacs is drawn in the @code{GtkFixed}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
945 widget.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
946
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
947 Dialogs in Emacs are @code{GtkDialog} widgets. The file dialog is a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
948 @code{GtkFileSelection} widget.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
949
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
950 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
951 To set a style for the menu bar using the absolute class name, use:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
952
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
953 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
954 widget_class "GtkWindow.GtkVBox.GtkMenuBar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
955 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
956
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
957 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
958 For the scroll bar, the absolute class name is:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
959
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
960 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
961 widget_class
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
962 "GtkWindow.GtkVBox.GtkFixed.GtkVScrollbar"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
963 style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
964 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
965
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
966 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
967 The names for the emacs widgets, and their classes, are:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
968
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
969 @multitable {@code{verticalScrollbar plus}} {@code{GtkFileSelection} and some}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
970 @item @code{emacs-filedialog}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
971 @tab @code{GtkFileSelection}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
972 @item @code{emacs-dialog}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
973 @tab @code{GtkDialog}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
974 @item @code{Emacs}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
975 @tab @code{GtkWindow}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
976 @item @code{pane}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
977 @tab @code{GtkVHbox}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
978 @item @code{emacs}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
979 @tab @code{GtkFixed}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
980 @item @code{verticalScrollBar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
981 @tab @code{GtkVScrollbar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
982 @item @code{emacs-toolbar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
983 @tab @code{GtkToolbar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
984 @item @code{menubar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
985 @tab @code{GtkMenuBar}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
986 @item @code{emacs-menuitem}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
987 @tab anything in menus
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
988 @end multitable
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
989
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
990 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
991 Thus, for Emacs you can write the two examples above as:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
992
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
993 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
994 widget "Emacs.pane.menubar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
995 widget "Emacs.pane.emacs.verticalScrollBar" style "my_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
996 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
997
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
998 GTK absolute names are quite strange when it comes to menus
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
999 and dialogs. The names do not start with @samp{Emacs}, as they are
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1000 free-standing windows and not contained (in the GTK sense) by the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1001 Emacs GtkWindow. To customize the dialogs and menus, use wildcards like this:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1002
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1003 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1004 widget "*emacs-dialog*" style "my_dialog_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1005 widget "*emacs-filedialog* style "my_file_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1006 widget "*emacs-menuitem* style "my_menu_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1007 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1008
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1009 If you specify a customization in @file{~/.emacs.d/gtkrc}, then it
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1010 automatically applies only to Emacs, since other programs don't read
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1011 that file. For example, the drop down menu in the file dialog can not
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1012 be customized by any absolute widget name, only by an absolute class
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1013 name. This is because the widgets in the drop down menu do not
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1014 have names and the menu is not contained in the Emacs GtkWindow. To
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1015 have all menus in Emacs look the same, use this in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1016 @file{~/.emacs.d/gtkrc}:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1017
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1018 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1019 widget_class "*Menu*" style "my_menu_style"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1020 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1021
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1022 @node GTK styles
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1023 @appendixsubsec GTK styles
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1024 @cindex GTK styles
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1025
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1026 In a GTK style you specify the appearance widgets shall have. You
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1027 can specify foreground and background color, background pixmap and
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1028 font. The edit widget (where you edit the text) in Emacs is a GTK
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1029 widget, but trying to specify a style for the edit widget will have no
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1030 effect. This is so that Emacs compiled for GTK is compatible with
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1031 Emacs compiled for other X toolkits. The settings for foreground,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1032 background and font for the edit widget is taken from the X resources;
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1033 @pxref{Resources}. Here is an example of two style declarations,
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1034 @samp{default} and @samp{ruler}:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1035
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1036 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1037 pixmap_path "/usr/share/pixmaps:/usr/include/X11/pixmaps"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1038
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1039 style "default"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1040 @{
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1041 font_name = "helvetica 12"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1042
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1043 bg[NORMAL] = @{ 0.83, 0.80, 0.73 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1044 bg[SELECTED] = @{ 0.0, 0.55, 0.55 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1045 bg[INSENSITIVE] = @{ 0.77, 0.77, 0.66 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1046 bg[ACTIVE] = @{ 0.0, 0.55, 0.55 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1047 bg[PRELIGHT] = @{ 0.0, 0.55, 0.55 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1048
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1049 fg[NORMAL] = "black"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1050 fg[SELECTED] = @{ 0.9, 0.9, 0.9 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1051 fg[ACTIVE] = "black"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1052 fg[PRELIGHT] = @{ 0.9, 0.9, 0.9 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1053
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1054 base[INSENSITIVE] = "#777766"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1055 text[INSENSITIVE] = @{ 0.60, 0.65, 0.57 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1056
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1057 bg_pixmap[NORMAL] = "background.xpm"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1058 bg_pixmap[INSENSITIVE] = "background.xpm"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1059 bg_pixmap[ACTIVE] = "background.xpm"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1060 bg_pixmap[PRELIGHT] = "<none>"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1061
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1062 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1063
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1064 style "ruler" = "default"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1065 @{
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1066 font_name = "helvetica 8"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1067 @}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1068
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1069 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1070
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1071 The style @samp{ruler} inherits from @samp{default}. This way you can build
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1072 on existing styles. The syntax for fonts and colors is described below.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1073
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1074 As this example shows, it is possible to specify several values for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1075 foreground and background depending on the widget's @dfn{state}. The
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1076 possible states are:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1077
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1078 @table @code
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1079 @item NORMAL
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1080 This is the default state for widgets.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1081 @item ACTIVE
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1082 This is the state for a widget that is ready to do something. It is
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1083 also for the trough of a scroll bar, i.e. @code{bg[ACTIVE] = "red"}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1084 sets the scroll bar trough to red. Buttons that have been pressed but
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1085 not released yet (``armed'') are in this state.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1086 @item PRELIGHT
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1087 This is the state for a widget that can be manipulated, when the mouse
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1088 pointer is over it---for example when the mouse is over the thumb in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1089 the scroll bar or over a menu item. When the mouse is over a button
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1090 that is not pressed, the button is in this state.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1091 @item SELECTED
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1092 This is the state for data that has been selected by the user. It can
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1093 be selected text or items selected in a list. This state is not used
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1094 in Emacs.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1095 @item INSENSITIVE
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1096 This is the state for widgets that are visible, but they can not be
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1097 manipulated in the usual way---for example, buttons that can't be
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1098 pressed, and disabled menu items. To display disabled menu items in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1099 yellow, use @code{fg[INSENSITIVE] = "yellow"}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1100 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1101
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1102 Here are the things that can go in a style declaration:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1103
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1104 @table @code
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1105 @item bg[@var{state}] = @var{color}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1106 This specifies the background color for the widget. Note that
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1107 editable text doesn't use @code{bg}; it uses @code{base} instead.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1108
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1109 @item base[@var{state}] = @var{color}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1110 This specifies the background color for editable text. In Emacs, this
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1111 color is used for the background of the text fields in the file
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1112 dialog.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1113
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1114 @item bg_pixmap[@var{state}] = "@var{pixmap}"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1115 This specifies an image background (instead of a background color).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1116 @var{pixmap} should be the image file name. GTK can use a number of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1117 image file formats, including XPM, XBM, GIF, JPEG and PNG. If you
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1118 want a widget to use the same image as its parent, use
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1119 @samp{<parent>}. If you don't want any image, use @samp{<none>}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1120 @samp{<none>} is the way to cancel a background image inherited from a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1121 parent style.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1122
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1123 You can't specify the file by its absolute file name. GTK looks for
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1124 the pixmap file in directories specified in @code{pixmap_path}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1125 @code{pixmap_path} is a colon-separated list of directories within
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1126 double quotes, specified at the top level in a @file{gtkrc} file
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1127 (i.e. not inside a style definition; see example above):
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1128
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1129 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1130 pixmap_path "/usr/share/pixmaps:/usr/include/X11/pixmaps"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1131 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1132
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1133 @item fg[@var{state}] = @var{color}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1134 This specifies the foreground color for widgets to use. It is the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1135 color of text in menus and buttons, and the color for the arrows in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1136 the scroll bar. For editable text, use @code{text}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1137
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1138 @item text[@var{state}] = @var{color}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1139 This is the color for editable text. In Emacs, this color is used for the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1140 text fields in the file dialog.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1141
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1142 @item font_name = "@var{font}"
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1143 This specifies the font for text in the widget. @var{font} is a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1144 Pango font name, for example @samp{Sans Italic 10}, @samp{Helvetica
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1145 Bold 12}, @samp{Courier 14}, @samp{Times 18}. See below for exact
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1146 syntax. The names are case insensitive.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1147 @end table
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1148
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1149 There are three ways to specify a color: by name, in hexadecimal
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1150 form, and with an RGB triplet.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1151
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1152 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1153 A color name is written within double quotes, for example @code{"red"}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1154
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1155 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1156 Hexadecimal form is the same as in X:
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1157 @code{#@var{rrrr}@var{gggg}@var{bbbb}}, where all three color specs
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1158 must have the same number of hex digits (1, 2, 3 or 4).
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1159
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1160 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1161 An RGB triplet looks like @code{@{ @var{r}, @var{g}, @var{b} @}},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1162 where @var{r}, @var{g} and @var{b} are either integers in the range
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1163 0-65535 or floats in the range 0.0-1.0.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1164
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1165 Pango font names have the form ``@var{family-list} @var{style-options}
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1166 @var{size}.''
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1167 @cindex Pango font name
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1168 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1169 @var{family-list} is a comma separated list of font families optionally
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1170 terminated by a comma. This way you can specify several families and the
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1171 first one found will be used. @var{family} corresponds to the second part in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1172 an X font name, for example in
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1173
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1174 @smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1175 -adobe-times-medium-r-normal--12-120-75-75-p-64-iso10646-1
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1176 @end smallexample
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1177
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1178 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1179 the family name is @samp{times}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1180
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1181 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1182 @var{style-options} is a whitespace separated list of words where each word
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1183 is a style, variant, weight, or stretch. The default value for all of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1184 these is @code{normal}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1185
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1186 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1187 A `style' corresponds to the fourth part of an X font name. In X font
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1188 names it is the character @samp{r}, @samp{i} or @samp{o}; in Pango
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1189 font names the corresponding values are @code{normal}, @code{italic},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1190 or @code{oblique}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1191
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1192 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1193 A `variant' is either @code{normal} or @code{small-caps}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1194 Small caps is a font with the lower case characters replaced by
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1195 smaller variants of the capital characters.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1196
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1197 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1198 Weight describes the ``boldness'' of a font. It corresponds to the third
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1199 part of an X font name. It is one of @code{ultra-light}, @code{light},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1200 @code{normal}, @code{bold}, @code{ultra-bold}, or @code{heavy}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1201
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1202 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1203 Stretch gives the width of the font relative to other designs within a
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1204 family. It corresponds to the fifth part of an X font name. It is one of
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1205 @code{ultra-condensed}, @code{extra-condensed}, @code{condensed},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1206 @code{semi-condensed}, @code{normal}, @code{semi-expanded},
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1207 @code{expanded}, @code{extra-expanded}, or @code{ultra-expanded}.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1208
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1209 @noindent
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1210 @var{size} is a decimal number that describes the font size in points.
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1211 @end ifnottex
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1212
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1213 @ignore
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1214 arch-tag: 9b6ff773-48b6-41f6-b2f9-f114b8bdd97f
cf017d5aa8c1 Move here from ../../man
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
1215 @end ignore