annotate man/custom.texi @ 370:bd866891f083

Added tag r21-1-14 for changeset 1d62742628b6
author cvs
date Mon, 13 Aug 2007 11:01:58 +0200
parents 182f72e8cd0d
children cc15677e0335
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
1 \input texinfo.tex
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
2
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
3 @c %**start of header
355
182f72e8cd0d Import from CVS: tag r21-1-7
cvs
parents: 343
diff changeset
4 @setfilename ../info/custom.info
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
5 @settitle The Customization Library
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
6 @iftex
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
7 @afourpaper
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
8 @headings double
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
9 @end iftex
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
10 @c %**end of header
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
11
343
8bec6624d99b Import from CVS: tag r21-1-1
cvs
parents: 173
diff changeset
12 @ifinfo
8bec6624d99b Import from CVS: tag r21-1-1
cvs
parents: 173
diff changeset
13 @dircategory XEmacs Editor
8bec6624d99b Import from CVS: tag r21-1-1
cvs
parents: 173
diff changeset
14 @direntry
8bec6624d99b Import from CVS: tag r21-1-1
cvs
parents: 173
diff changeset
15 * Customizations: (custom). Customization Library.
8bec6624d99b Import from CVS: tag r21-1-1
cvs
parents: 173
diff changeset
16 package.
8bec6624d99b Import from CVS: tag r21-1-1
cvs
parents: 173
diff changeset
17 @end direntry
8bec6624d99b Import from CVS: tag r21-1-1
cvs
parents: 173
diff changeset
18 @end ifinfo
8bec6624d99b Import from CVS: tag r21-1-1
cvs
parents: 173
diff changeset
19
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
20 @node Top, Declaring Groups, (dir), (dir)
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
21 @comment node-name, next, previous, up
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
22 @top The Customization Library
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
23
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
24 This manual describes how to declare customization groups, variables,
120
cca96a509cfe Import from CVS: tag r20-1b12
cvs
parents: 118
diff changeset
25 and faces. It doesn't contain any examples, but please look at the file
cca96a509cfe Import from CVS: tag r20-1b12
cvs
parents: 118
diff changeset
26 @file{cus-edit.el} which contains many declarations you can learn from.
cca96a509cfe Import from CVS: tag r20-1b12
cvs
parents: 118
diff changeset
27
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
28 @menu
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
29 * Declaring Groups::
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
30 * Declaring Variables::
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
31 * Declaring Faces::
102
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
32 * Usage for Package Authors::
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
33 * Utilities::
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
34 * The Init File::
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
35 * Wishlist::
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
36 @end menu
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
37
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
38 All the customization declarations can be changes by keyword arguments.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
39 Groups, variables, and faces all share these common keywords:
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
40
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
41 @table @code
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
42 @item :group
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
43 @var{value} should be a customization group.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
44 Add @var{symbol} to that group.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
45 @item :link
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
46 @var{value} should be a widget type.
161
28f395d8dc7a Import from CVS: tag r20-3b7
cvs
parents: 155
diff changeset
47 Add @var{value} to the external links for this customization option.
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
48 Useful widget types include @code{custom-manual}, @code{info-link}, and
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
49 @code{url-link}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
50 @item :load
161
28f395d8dc7a Import from CVS: tag r20-3b7
cvs
parents: 155
diff changeset
51 Add @var{value} to the files that should be loaded before displaying
28f395d8dc7a Import from CVS: tag r20-3b7
cvs
parents: 155
diff changeset
52 this customization option. The value should be either a string, which
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
53 should be a string which will be loaded with @code{load-library} unless
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
54 present in @code{load-history}, or a symbol which will be loaded with
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
55 @code{require}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
56 @item :tag
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
57 @var{Value} should be a short string used for identifying the option in
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
58 customization menus and buffers. By default the tag will be
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
59 automatically created from the options name.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
60 @end table
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
61
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
62 @node Declaring Groups, Declaring Variables, Top, Top
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
63 @comment node-name, next, previous, up
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
64 @section Declaring Groups
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
65
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
66 Use @code{defgroup} to declare new customization groups.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
67
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
68 @defun defgroup symbol members doc [keyword value]...
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
69 Declare @var{symbol} as a customization group containing @var{members}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
70 @var{symbol} does not need to be quoted.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
71
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
72 @var{doc} is the group documentation.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
73
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
74 @var{members} should be an alist of the form ((@var{name}
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
75 @var{widget})...) where @var{name} is a symbol and @var{widget} is a
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
76 widget for editing that symbol. Useful widgets are
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
77 @code{custom-variable} for editing variables, @code{custom-face} for
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
78 editing faces, and @code{custom-group} for editing groups.@refill
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
79
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
80 Internally, custom uses the symbol property @code{custom-group} to keep
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
81 track of the group members, and @code{group-documentation} for the
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
82 documentation string.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
83
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
84 The following additional @var{keyword}'s are defined:
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
85
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
86 @table @code
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
87 @item :prefix
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
88 @var{value} should be a string. If the string is a prefix for the name
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
89 of a member of the group, that prefix will be ignored when creating a
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
90 tag for that member.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
91 @end table
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
92 @end defun
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
93
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
94 @node Declaring Variables, Declaring Faces, Declaring Groups, Top
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
95 @comment node-name, next, previous, up
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
96 @section Declaring Variables
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
97
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
98 Use @code{defcustom} to declare user editable variables.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
99
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
100 @defun defcustom symbol value doc [keyword value]...
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
101 Declare @var{symbol} as a customizable variable that defaults to @var{value}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
102 Neither @var{symbol} nor @var{value} needs to be quoted.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
103 If @var{symbol} is not already bound, initialize it to @var{value}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
104
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
105 @var{doc} is the variable documentation.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
106
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
107 The following additional @var{keyword}'s are defined:
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
108
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
109 @table @code
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
110 @item :type
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
111 @var{value} should be a widget type.
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
112
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
113 @item :options
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
114 @var{value} should be a list of possible members of the specified type.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
115 For hooks, this is a list of function names.
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
116
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
117 @item :initialize
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
118 @var{value} should be a function used to initialize the variable. It
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
119 takes two arguments, the symbol and value given in the @code{defcustom} call.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
120 Some predefined functions are:
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
121
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
122 @table @code
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
123 @item custom-initialize-set
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
124 Use the @code{:set} method to initialize the variable. Do not
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
125 initialize it if already bound. This is the default @code{:initialize}
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
126 method.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
127
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
128 @item custom-initialize-default
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
129 Always use @code{set-default} to initialize the variable, even if a
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
130 @code{:set} method has been specified.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
131
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
132 @item custom-initialize-reset
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
133 If the variable is already bound, reset it by calling the @code{:set}
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
134 method with the value returned by the @code{:get} method.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
135
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
136 @item custom-initialize-changed
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
137 Like @code{custom-initialize-reset}, but use @code{set-default} to
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
138 initialize the variable if it is not bound and has not been set
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
139 already.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
140 @end table
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
141
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
142 @item :set
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
143 @var{value} should be a function to set the value of the symbol. It
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
144 takes two arguments, the symbol to set and the value to give it. The
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
145 default is @code{set-default}.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
146
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
147 @item :get
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
148 @var{value} should be a function to extract the value of symbol. The
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
149 function takes one argument, a symbol, and should return the current
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
150 value for that symbol. The default is @code{default-value}.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
151
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
152 @item :require
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
153 @var{value} should be a feature symbol. Each feature will be required
161
28f395d8dc7a Import from CVS: tag r20-3b7
cvs
parents: 155
diff changeset
154 when the `defcustom' is evaluated, or when Emacs is started if the user
28f395d8dc7a Import from CVS: tag r20-3b7
cvs
parents: 155
diff changeset
155 has saved this option.
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
156
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
157 @end table
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
158
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
159 @xref{Sexp Types,,,widget,The Widget Library}, for information about
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
160 widgets to use together with the @code{:type} keyword.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
161 @end defun
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
162
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
163 Internally, custom uses the symbol property @code{custom-type} to keep
153
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
164 track of the variables type, @code{standard-value} for the program
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
165 specified default value, @code{saved-value} for a value saved by the
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
166 user, and @code{variable-documentation} for the documentation string.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
167
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
168 Use @code{custom-add-option} to specify that a specific function is
161
28f395d8dc7a Import from CVS: tag r20-3b7
cvs
parents: 155
diff changeset
169 useful as an member of a hook.
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
170
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
171 @defun custom-add-option symbol option
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
172 To the variable @var{symbol} add @var{option}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
173
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
174 If @var{symbol} is a hook variable, @var{option} should be a hook
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
175 member. For other types variables, the effect is undefined."
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
176 @end defun
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
177
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
178 @node Declaring Faces, Usage for Package Authors, Declaring Variables, Top
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
179 @comment node-name, next, previous, up
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
180 @section Declaring Faces
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
181
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
182 Faces are declared with @code{defface}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
183
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
184 @defun defface face spec doc [keyword value]...
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
185
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
186 Declare @var{face} as a customizable face that defaults to @var{spec}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
187 @var{face} does not need to be quoted.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
188
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
189 If @var{face} has been set with `custom-set-face', set the face attributes
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
190 as specified by that function, otherwise set the face attributes
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
191 according to @var{spec}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
192
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
193 @var{doc} is the face documentation.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
194
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
195 @var{spec} should be an alist of the form @samp{((@var{display} @var{atts})...)}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
196
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
197 @var{atts} is a list of face attributes and their values. The possible
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
198 attributes are defined in the variable `custom-face-attributes'.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
199
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
200 The @var{atts} of the first entry in @var{spec} where the @var{display}
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
201 matches the frame should take effect in that frame. @var{display} can
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
202 either be the symbol `t', which will match all frames, or an alist of
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
203 the form @samp{((@var{req} @var{item}...)...)}@refill
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
204
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
205 For the @var{display} to match a FRAME, the @var{req} property of the
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
206 frame must match one of the @var{item}. The following @var{req} are
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
207 defined:@refill
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
208
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
209 @table @code
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
210 @item type
108
360340f9fd5f Import from CVS: tag r20-1b6
cvs
parents: 106
diff changeset
211 (the value of (window-system))@*
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
212 Should be one of @code{x} or @code{tty}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
213
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
214 @item class
108
360340f9fd5f Import from CVS: tag r20-1b6
cvs
parents: 106
diff changeset
215 (the frame's color support)@*
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
216 Should be one of @code{color}, @code{grayscale}, or @code{mono}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
217
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
218 @item background
108
360340f9fd5f Import from CVS: tag r20-1b6
cvs
parents: 106
diff changeset
219 (what color is used for the background text)@*
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
220 Should be one of @code{light} or @code{dark}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
221 @end table
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
222
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
223 Internally, custom uses the symbol property @code{face-defface-spec} for
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
224 the program specified default face properties, @code{saved-face} for
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
225 properties saved by the user, and @code{face-documentation} for the
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
226 documentation string.@refill
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
227
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
228 @end defun
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
229
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
230 @node Usage for Package Authors, Utilities, Declaring Faces, Top
102
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
231 @comment node-name, next, previous, up
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
232 @section Usage for Package Authors
102
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
233
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
234 The recommended usage for the author of a typical emacs lisp package is
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
235 to create one group identifying the package, and make all user options
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
236 and faces members of that group. If the package has more than around 20
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
237 such options, they should be divided into a number of subgroups, with
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
238 each subgroup being member of the top level group.
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
239
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
240 The top level group for the package should itself be member of one or
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
241 more of the standard customization groups. There exists a group for
173
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
242 each @emph{finder} keyword. Press @kbd{C-h p} to see a list of finder
102
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
243 keywords, and add you group to each of them, using the @code{:group}
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
244 keyword.
a145efe76779 Import from CVS: tag r20-1b3
cvs
parents: 100
diff changeset
245
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
246 @node Utilities, The Init File, Usage for Package Authors, Top
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
247 @comment node-name, next, previous, up
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
248 @section Utilities
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
249
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
250 These utilities can come in handy when adding customization support.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
251
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
252 @deffn Widget custom-manual
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
253 Widget type for specifying the info manual entry for a customization
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
254 option. It takes one argument, an info address.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
255 @end deffn
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
256
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
257 @defun custom-add-to-group group member widget
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
258 To existing @var{group} add a new @var{member} of type @var{widget},
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
259 If there already is an entry for that member, overwrite it.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
260 @end defun
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
261
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
262 @defun custom-add-link symbol widget
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
263 To the custom option @var{symbol} add the link @var{widget}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
264 @end defun
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
265
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
266 @defun custom-add-load symbol load
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
267 To the custom option @var{symbol} add the dependency @var{load}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
268 @var{load} should be either a library file name, or a feature name.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
269 @end defun
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
270
124
9b50b4588a93 Import from CVS: tag r20-1b15
cvs
parents: 120
diff changeset
271 @defun customize-menu-create symbol &optional name
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
272 Create menu for customization group @var{symbol}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
273 If optional @var{name} is given, use that as the name of the menu.
124
9b50b4588a93 Import from CVS: tag r20-1b15
cvs
parents: 120
diff changeset
274 Otherwise the menu will be named `Customize'.
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
275 The menu is in a format applicable to @code{easy-menu-define}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
276 @end defun
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
277
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
278 @node The Init File, Wishlist, Utilities, Top
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
279 @comment node-name, next, previous, up
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
280 @section The Init File
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
281
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
282 When you save the customizations, call to @code{custom-set-variables},
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
283 @code{custom-set-faces} are inserted into the file specified by
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
284 @code{custom-file}. By default @code{custom-file} is your @file{.emacs}
116
9f59509498e1 Import from CVS: tag r20-1b10
cvs
parents: 114
diff changeset
285 file. If you use another file, you must explicitly load it yourself.
9f59509498e1 Import from CVS: tag r20-1b10
cvs
parents: 114
diff changeset
286 The two functions will initialize variables and faces as you have
9f59509498e1 Import from CVS: tag r20-1b10
cvs
parents: 114
diff changeset
287 specified.
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
288
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
289 @node Wishlist, , The Init File, Top
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
290 @comment node-name, next, previous, up
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
291 @section Wishlist
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
292
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
293 @itemize @bullet
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
294 @item
120
cca96a509cfe Import from CVS: tag r20-1b12
cvs
parents: 118
diff changeset
295 Better support for keyboard operations in the customize buffer.
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
296
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
297 @item
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
298 Integrate with @file{w3} so you can get customization buffers with much
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
299 better formatting. I'm thinking about adding a <custom>name</custom>
108
360340f9fd5f Import from CVS: tag r20-1b6
cvs
parents: 106
diff changeset
300 tag. The latest w3 have some support for this, so come up with a
360340f9fd5f Import from CVS: tag r20-1b6
cvs
parents: 106
diff changeset
301 convincing example.
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
302
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
303 @item
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
304 Add an `examples' section, with explained examples of custom type
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
305 definitions.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
306
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
307 @item
110
fe104dbd9147 Import from CVS: tag r20-1b7
cvs
parents: 108
diff changeset
308 Support selectable color themes. I.e., change many faces by setting one
fe104dbd9147 Import from CVS: tag r20-1b7
cvs
parents: 108
diff changeset
309 variable.
fe104dbd9147 Import from CVS: tag r20-1b7
cvs
parents: 108
diff changeset
310
fe104dbd9147 Import from CVS: tag r20-1b7
cvs
parents: 108
diff changeset
311 @item
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
312 Support undo using lmi's @file{gnus-undo.el}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
313
167
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
314
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
315 @item
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
316 Make it possible to append to `choice', `radio', and `set' options.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
317
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
318 @item
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
319 Ask whether set or modified variables should be saved in
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
320 @code{kill-buffer-hook}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
321
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
322 Ditto for @code{kill-emacs-query-functions}.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
323
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
324 @item
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
325 Command to check if there are any customization options that
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
326 does not belong to an existing group.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
327
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
328 @item
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
329 Optionally disable the point-cursor and instead highlight the selected
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
330 item in XEmacs. This is like the *Completions* buffer in XEmacs.
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
331 Suggested by Jens Lautenbacher
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
332 @samp{<jens@@lemming0.lem.uni-karlsruhe.de>}.@refill
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
333
120
cca96a509cfe Import from CVS: tag r20-1b12
cvs
parents: 118
diff changeset
334 @item
161
28f395d8dc7a Import from CVS: tag r20-3b7
cvs
parents: 155
diff changeset
335 Explain why it is necessary that all choices have different default
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
336 values.
120
cca96a509cfe Import from CVS: tag r20-1b12
cvs
parents: 118
diff changeset
337
124
9b50b4588a93 Import from CVS: tag r20-1b15
cvs
parents: 120
diff changeset
338 @item
9b50b4588a93 Import from CVS: tag r20-1b15
cvs
parents: 120
diff changeset
339 Make it possible to include a comment/remark/annotation when saving an
9b50b4588a93 Import from CVS: tag r20-1b15
cvs
parents: 120
diff changeset
340 option.
9b50b4588a93 Import from CVS: tag r20-1b15
cvs
parents: 120
diff changeset
341
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
342 @item
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
343 Add some direct support for meta variables, i.e. make it possible to
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
344 specify that this variable should be reset when that variable is
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
345 changed.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
346
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
347 @item
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
348 Add tutorial.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
349
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
350 @item
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
351 Describe the @code{:type} syntax in this manual.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
352
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
353 @item
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
354 Find a place is this manual for the following text:
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
355
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
356 @strong{Radio vs. Buttons}
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
357
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
358 Use a radio if you can't find a good way to describe the item in the
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
359 choice menu text. I.e. it is better to use a radio if you expect the
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
360 user would otherwise manually select each item from the choice menu in
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
361 turn to see what it expands too.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
362
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
363 Avoid radios if some of the items expands to complex structures.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
364
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
365 I mostly use radios when most of the items are of type
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
366 @code{function-item} or @code{variable-item}.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
367
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
368 @item
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
369 Update customize buffers when @code{custom-set-variable} or
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
370 @code{custom-save-customized} is called.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
371
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
372 @item
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
373 Better handling of saved but uninitialized items.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 136
diff changeset
374
153
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
375 @item
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
376 Detect when faces have been changed outside customize.
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
377
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
378 @item
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
379 Enable mouse help in Emacs by default.
153
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
380
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
381 @item
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
382 Add an easy way to display the standard settings when an item is modified.
25f70ba0133c Import from CVS: tag r20-3b3
cvs
parents: 149
diff changeset
383
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
384 @item
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
385 See if it is feasible to scan files for customization information
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
386 instead of loading them,
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
387
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
388 @item
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
389 Add hint message when user push a non-pushable tag.
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
390
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
391 Suggest that the user unhide if hidden, and edit the value directly
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
392 otherwise.
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents: 153
diff changeset
393
163
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
394 @item
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
395 Use checkboxes and radio buttons in the state menus.
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
396
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
397 @item
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
398 Add option to hide @samp{[hide]} for short options. Default, on.
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
399
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
400 @item
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
401 Add option to hide @samp{[state]} for options with their standard
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
402 settings.
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
403
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
404 @item
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
405 There should be a way to specify site defaults for user options.
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
406
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
407 @item
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
408 There should be more buffer styles. The default `nested style, the old
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
409 `outline' style, a `numeric' style with numbers instead of stars, an
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
410 `empty' style with just the group name, and `compact' with only one line
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
411 per item.
0132846995bd Import from CVS: tag r20-3b8
cvs
parents: 161
diff changeset
412
167
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
413 @item
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
414 Newline and tab should be displayed as @samp{^J} and @samp{^I} in the
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
415 @code{regexp} and @code{file} widgets. I think this can be done in
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
416 XEmacs by adding a display table to the face.
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
417
173
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
418 @item
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
419 Use glyphs to draw the @code{customize-browse} tree.
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
420
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
421 Add echo and balloon help. You should be able to read the documentation
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
422 simply by moving the mouse pointer above the name.
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
423
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
424 Add parent links.
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
425
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
426 Add colors.
8eaf7971accc Import from CVS: tag r20-3b13
cvs
parents: 167
diff changeset
427
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
428 @end itemize
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
429
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
430 @contents
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents:
diff changeset
431 @bye