annotate man/lispref/x-windows.texi @ 440:8de8e3f6228a r21-2-28

Import from CVS: tag r21-2-28
author cvs
date Mon, 13 Aug 2007 11:33:38 +0200
parents 3ecd8885ac67
children 576fb035e263
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 @c -*-texinfo-*-
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2 @c This is part of the XEmacs Lisp Reference Manual.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 @c Copyright (C) 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 @c See the file lispref.texi for copying conditions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 @setfilename ../../info/x-windows.texinfo
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 @node X-Windows, ToolTalk Support, System Interface, Top
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7 @chapter Functions Specific to the X Window System
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 @cindex X
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 @cindex X-Windows
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 @c This section is largely different from the one in FSF Emacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 XEmacs provides the concept of @dfn{devices}, which generalizes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14 connections to an X server, a TTY device, etc. Most information about
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 an X server that XEmacs is connected to can be determined through
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 general console and device functions. @xref{Consoles and Devices}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 However, there are some features of the X Window System that do not
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 generalize well, and they are covered specially here.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 @menu
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
21 * X Selections:: Transferring text to and from other X clients.
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
22 * X Server:: Information about the X server connected to
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
23 a particular device.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 * X Miscellaneous:: Other X-specific functions and variables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 @end menu
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 @node X Selections
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 @section X Selections
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 @cindex selection (for X windows)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 The X server records a set of @dfn{selections} which permit transfer of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 data between application programs. The various selections are
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33 distinguished by @dfn{selection types}, represented in XEmacs by
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 symbols. X clients including XEmacs can read or set the selection for
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 any given type.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 @defun x-own-selection data &optional type
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 This function sets a ``selection'' in the X server. It takes two
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39 arguments: a value, @var{data}, and the selection type @var{type} to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 assign it to. @var{data} may be a string, a cons of two markers, or an
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 extent. In the latter cases, the selection is considered to be the text
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 between the markers, or between the extent's endpoints.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 Each possible @var{type} has its own selection value, which changes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 independently. The usual values of @var{type} are @code{PRIMARY} and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 @code{SECONDARY}; these are symbols with upper-case names, in accord
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 with X Windows conventions. The default is @code{PRIMARY}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 (In FSF Emacs, this function is called @code{x-set-selection} and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 takes different arguments.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 @defun x-get-selection
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 This function accesses selections set up by XEmacs or by other X
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55 clients. It returns the value of the current primary selection.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 @defun x-disown-selection &optional secondary-p
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 Assuming we own the selection, this function disowns it. If
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60 @var{secondary-p} is non-@code{nil}, the secondary selection instead of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 the primary selection is discarded.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 @cindex cut buffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 The X server also has a set of numbered @dfn{cut buffers} which can
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 store text or other data being moved between applications. Cut buffers
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67 are considered obsolete, but XEmacs supports them for the sake of X
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 clients that still use them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 @defun x-get-cutbuffer &optional n
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 This function returns the contents of cut buffer number @var{n}. (This
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 function is called @code{x-get-cut-buffer} in FSF Emacs.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75 @defun x-store-cutbuffer string
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 This function stores @var{string} into the first cut buffer (cut buffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77 0), moving the other values down through the series of cut buffers,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 kill-ring-style. (This function is called @code{x-set-cut-buffer} in FSF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 Emacs.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82 @node X Server
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 @section X Server
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85 This section describes how to access and change the overall status of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 the X server XEmacs is using.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 @menu
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
89 * Resources:: Getting resource values from the server.
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
90 * Server Data:: Getting info about the X server.
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
91 * Grabs:: Restricting access to the server by other apps.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 @end menu
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 @node Resources
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 @subsection Resources
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 @defun default-x-device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 This function return the default X device for resourcing. This is the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99 first-created X device that still exists.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 @defun x-get-resource name class type &optional locale device noerror
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 This function retrieves a resource value from the X resource manager.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 @itemize @bullet
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107 The first arg is the name of the resource to retrieve, such as
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 @samp{"font"}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111 The second arg is the class of the resource to retrieve, like
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112 @samp{"Font"}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 The third arg should be one of the symbols @code{string},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 @code{integer}, @code{natnum}, or @code{boolean}, specifying the type of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117 object that the database is searched for.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 The fourth arg is the locale to search for the resources on, and can
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121 currently be a a buffer, a frame, a device, or the symbol @code{global}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
122 If omitted, it defaults to @code{global}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
123
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
124 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125 The fifth arg is the device to search for the resources on. (The
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
126 resource database for a particular device is constructed by combining
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
127 non-device- specific resources such any command-line resources specified
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
128 and any app-defaults files found [or the fallback resources supplied by
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
129 XEmacs, if no app-defaults file is found] with device-specific resources
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130 such as those supplied using @samp{xrdb}.) If omitted, it defaults to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 the device of @var{locale}, if a device can be derived (i.e. if
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132 @var{locale} is a frame or device), and otherwise defaults to the value
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133 of @code{default-x-device}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
135 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 The sixth arg @var{noerror}, if non-@code{nil}, means do not signal an
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137 error if a bogus resource specification was retrieved (e.g. if a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138 non-integer was given when an integer was requested). In this case, a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139 warning is issued instead.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140 @end itemize
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142 The resource names passed to this function are looked up relative to the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
143 locale.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
144
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
145 If you want to search for a subresource, you just need to specify the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
146 resource levels in @var{name} and @var{class}. For example, @var{name}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
147 could be @samp{"modeline.attributeFont"}, and @var{class}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
148 @samp{"Face.AttributeFont"}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
149
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
150 Specifically,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
151
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
152 @enumerate
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
153 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
154 If @var{locale} is a buffer, a call
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
155
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
156 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
157 @code{(x-get-resource "foreground" "Foreground" 'string @var{some-buffer})}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
158 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
159
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160 is an interface to a C call something like
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
162 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163 @code{XrmGetResource (db, "xemacs.buffer.@var{buffer-name}.foreground",
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
164 "Emacs.EmacsLocaleType.EmacsBuffer.Foreground",
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
165 "String");}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
166 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
167
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
168 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
169 If @var{locale} is a frame, a call
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
170
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
171 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
172 @code{(x-get-resource "foreground" "Foreground" 'string @var{some-frame})}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
173 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
174
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
175 is an interface to a C call something like
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
176 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
177
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
178 @code{XrmGetResource (db, "xemacs.frame.@var{frame-name}.foreground",
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
179 "Emacs.EmacsLocaleType.EmacsFrame.Foreground",
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
180 "String");}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
181 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
182
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
183 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
184 If @var{locale} is a device, a call
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
185
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
186 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
187 @code{(x-get-resource "foreground" "Foreground" 'string @var{some-device})}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
188 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
189
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
190 is an interface to a C call something like
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
191
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
192 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
193 @code{XrmGetResource (db, "xemacs.device.@var{device-name}.foreground",
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
194 "Emacs.EmacsLocaleType.EmacsDevice.Foreground",
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
195 "String");}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
196 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
197
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
198 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
199 If @var{locale} is the symbol @code{global}, a call
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
200
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
201 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
202 @code{(x-get-resource "foreground" "Foreground" 'string 'global)}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
203 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
204
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
205 is an interface to a C call something like
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
206
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
207 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
208 @code{XrmGetResource (db, "xemacs.foreground",
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
209 "Emacs.Foreground",
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
210 "String");}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
211 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
212 @end enumerate
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
213
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
214 Note that for @code{global}, no prefix is added other than that of the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
215 application itself; thus, you can use this locale to retrieve arbitrary
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
216 application resources, if you really want to.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
217
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
218 The returned value of this function is @code{nil} if the queried
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
219 resource is not found. If @var{type} is @code{string}, a string is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
220 returned, and if it is @code{integer}, an integer is returned. If
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
221 @var{type} is @code{boolean}, then the returned value is the list
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
222 @code{(t)} for true, @code{(nil)} for false, and is @code{nil} to mean
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
223 ``unspecified''.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
224 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
225
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
226 @defun x-put-resource resource-line &optional device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
227 This function adds a resource to the resource database for @var{device}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
228 @var{resource-line} specifies the resource to add and should be a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
229 standard resource specification.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
230 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
231
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
232 @defvar x-emacs-application-class
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
233 This variable holds The X application class of the XEmacs process. This
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
234 controls, among other things, the name of the ``app-defaults'' file that
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
235 XEmacs will use. For changes to this variable to take effect, they must
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
236 be made before the connection to the X server is initialized, that is,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
237 this variable may only be changed before XEmacs is dumped, or by setting
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
238 it in the file @file{lisp/term/x-win.el}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
239
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
240 By default, this variable is nil at startup. When the connection
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
241 to the X server is first initialized, the X resource database will
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
242 be consulted and the value will be set according to whether any
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
243 resources are found for the application class ``XEmacs''.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
244 @end defvar
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
245
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
246 @node Server Data
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
247 @subsection Data about the X Server
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
248
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
249 This section describes functions and a variable that you can use to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
250 get information about the capabilities and origin of the X server
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
251 corresponding to a particular device. The device argument is generally
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
252 optional and defaults to the selected device.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
253
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
254 @defun x-server-version &optional device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
255 This function returns the list of version numbers of the X server
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
256 @var{device} is on. The returned value is a list of three integers: the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
257 major and minor version numbers of the X protocol in use, and the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
258 vendor-specific release number.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
259 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
260
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
261 @defun x-server-vendor &optional device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
262 This function returns the vendor supporting the X server @var{device} is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
263 on.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
264 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
265
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
266 @defun x-display-visual-class &optional device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
267 This function returns the visual class of the display @var{device} is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
268 on. The value is one of the symbols @code{static-gray},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
269 @code{gray-scale}, @code{static-color}, @code{pseudo-color},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
270 @code{true-color}, and @code{direct-color}. (Note that this is different
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
271 from previous versions of XEmacs, which returned @code{StaticGray},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
272 @code{GrayScale}, etc.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
273 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
274
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
275 @node Grabs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
276 @subsection Restricting Access to the Server by Other Apps
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
277
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
278 @defun x-grab-keyboard &optional device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
279 This function grabs the keyboard on the given device (defaulting to the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
280 selected one). So long as the keyboard is grabbed, all keyboard events
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
281 will be delivered to XEmacs---it is not possible for other X clients to
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
282 eavesdrop on them. Ungrab the keyboard with @code{x-ungrab-keyboard}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
283 (use an @code{unwind-protect}). Returns @code{t} if the grab was
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
284 successful; @code{nil} otherwise.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
285 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
286
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
287 @defun x-ungrab-keyboard &optional device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
288 This function releases a keyboard grab made with @code{x-grab-keyboard}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
289 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
290
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
291 @defun x-grab-pointer &optional device cursor ignore-keyboard
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
292 This function grabs the pointer and restricts it to its current window.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
293 If optional @var{device} argument is @code{nil}, the selected device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
294 will be used. If optional @var{cursor} argument is non-@code{nil},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
295 change the pointer shape to that until @code{x-ungrab-pointer} is called
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
296 (it should be an object returned by the @code{make-cursor} function).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
297 If the second optional argument @var{ignore-keyboard} is non-@code{nil},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
298 ignore all keyboard events during the grab. Returns @code{t} if the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
299 grab is successful, @code{nil} otherwise.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
300 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
301
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
302 @defun x-ungrab-pointer &optional device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
303 This function releases a pointer grab made with @code{x-grab-pointer}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
304 If optional first arg @var{device} is @code{nil} the selected device is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
305 used. If it is @code{t} the pointer will be released on all X devices.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
306 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
307
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
308 @node X Miscellaneous
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
309 @section Miscellaneous X Functions and Variables
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
310
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
311 @defvar x-bitmap-file-path
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
312 This variable holds a list of the directories in which X bitmap files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
313 may be found. If @code{nil}, this is initialized from the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
314 @samp{"*bitmapFilePath"} resource. This is used by the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
315 @code{make-image-instance} function (however, note that if the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
316 environment variable @samp{XBMLANGPATH} is set, it is consulted first).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
317 @end defvar
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
318
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
319 @defvar x-library-search-path
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
320 This variable holds the search path used by @code{read-color} to find
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
321 @file{rgb.txt}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
322 @end defvar
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
323
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
324 @defun x-valid-keysym-name-p keysym
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
325 This function returns true if @var{keysym} names a keysym that the X
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
326 library knows about. Valid keysyms are listed in the files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
327 @file{/usr/include/X11/keysymdef.h} and in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
328 @file{/usr/lib/X11/XKeysymDB}, or whatever the equivalents are on your
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
329 system.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
330 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
331
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
332 @defun x-window-id &optional frame
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
333 This function returns the ID of the X11 window. This gives us a chance
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
334 to manipulate the Emacs window from within a different program. Since
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
335 the ID is an unsigned long, we return it as a string.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
336 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
337
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
338 @defvar x-allow-sendevents
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
339 If non-@code{nil}, synthetic events are allowed. @code{nil} means
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
340 they are ignored. Beware: allowing XEmacs to process SendEvents opens a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
341 big security hole.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
342 @end defvar
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
343
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
344 @defun x-debug-mode arg &optional device
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
345 With a true arg, make the connection to the X server synchronous. With
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
346 false, make it asynchronous. Synchronous connections are much slower,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
347 but are useful for debugging. (If you get X errors, make the connection
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
348 synchronous, and use a debugger to set a breakpoint on
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
349 @code{x_error_handler}. Your backtrace of the C stack will now be
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
350 useful. In asynchronous mode, the stack above @code{x_error_handler}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
351 isn't helpful because of buffering.) If @var{device} is not specified,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
352 the selected device is assumed.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
353
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
354 Calling this function is the same as calling the C function
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
355 @code{XSynchronize}, or starting the program with the @samp{-sync}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
356 command line argument.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
357 @end defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
358
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
359 @defvar x-debug-events
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
360 If non-zero, debug information about events that XEmacs sees is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
361 displayed. Information is displayed on stderr. Currently defined
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
362 values are:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
363
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
364 @itemize @bullet
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
365 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
366 1 == non-verbose output
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
367 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
368 2 == verbose output
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
369 @end itemize
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
370 @end defvar