|
|
1.1 root 1: .de EX \"Begin example
2: .ne 5
3: .if n .sp 1
4: .if t .sp .5
5: .nf
6: .in +.5i
7: ..
8: .de EE
9: .fi
10: .in -.5i
11: .if n .sp 1
12: .if t .sp .5
13: ..
14: .TH UWM 1 "27 January 1986" "X Version 10"
15: .SH NAME
16: .PP
17: uwm - Window Manager Client Application of X
18: .PP
19: .SH SYNTAX
20: .PP
21: \fBuwm \fP [-f \fIfilename\fP]
22: .PP
23: .SH DESCRIPTION
24: .PP
25: The \fIuwm\fP command is a window manager client
26: application of the window
27: server.
28: .PP
29: When the command is invoked, it traces a predefined search path
30: to locate any \fIuwm\fP startup files. If no startup files
31: exist, \fIuwm\fP initializes its built-in default file.
32: .PP
33: If startup files exist in any of the following locations,
34: it adds the variables to the default variables.
35: In the case of contention, the variables in the last file found
36: override previous specifications. Files in the \fIuwm\fP
37: search path are:
38: .sp
39: \fI/usr/new/lib/X/uwm/system.uwmrc
40: $HOME/.uwmrc\fP
41: .PP
42: To use only the settings defined in a single startup file,
43: include the variables, \fBresetbindings\fP, \fBresetmenus\fP,
44: \fBresetvariables\fP
45: at the top of that specific startup file.
46: .PP
47: .SH ARGUMENTS
48: .IP "-f \fIfilename\fP"
49: Names an alternate file as a
50: .I uwm
51: startup file.
52: .PP
53: .SH STARTUP FILE VARIABLES
54: .PP
55: Variables are typically entered first, at the top of the startup
56: file.
57: By convention, \fBresetbindings\fP, \fBresetmenus\fP, and
58: \fBresetvariables\fP head the list.
59: .IP "\fBautoselect\fP/\fBnoautoselect\fP" 15
60: places menu cursor in first menu item. If unspecified, menu
61: cursor is placed in the menu header when the menu is displayed.
62: .IP \fBdelta\fP=\fIpixels\fP
63: indicates the number of pixels the cursor is moved
64: before the action is interpreted by the window manager as a command.
65: (Also refer to the \fBdelta\fP mouse action.)
66: .IP \fBfreeze\fP/\fBnofreeze\fP
67: locks all other client applications
68: out of the server during certain window manager tasks, such as move
69: and resize.
70: .IP \fBgrid\fP/\fBnogrid\fP
71: displays a finely-ruled grid to help
72: you position an icon or window during resize or move operations.
73: .IP "\fBhiconpad\fP=\fIn\fP"
74: indicates the number of pixels to pad an icon horizontally.
75: The default is five pixels.
76: .IP "\fBhmenupad\fP=\fIn\fP"
77: indicates the amount of space in pixels, that each menu item is
78: padded above and below the text.
79: .IP "\fBiconfont\fP=\fIfontname\fP"
80: names the font that is displayed within icons.
81: Font names are listed in the font directory, \fI/usr/new/lib/X/font\fP.
82: .IP "\fBmaxcolors\fP=\fIn\fP "
83: limits the number of colors the window manager can use in a
84: given invocation.
85: If set to zero, or not specified,
86: \fIuwm\fP assumes no limit to the number of colors it can take from
87: the color map.
88: \fBmaxcolors\fP counts colors as they are included in the file.
89: .IP "\fBnormali\fP/\fBnonormali\fP"
90: places icons created with \fBf.newiconify\fP within the root
91: window, even if it is placed partially off the screen. With
92: \fBnonormali\fP the icon is placed exactly where the cursor leaves it.
93: .IP "\fBnormalw\fP/\fBnonormalw\fP"
94: places window created with \fBf.newiconify\fP within the root
95: window, even if it is placed partially off the screen. With
96: \fBnonormalw\fP the window is placed exactly where the cursor
97: leaves it.
98: .IP \fBpush\fP=\fIn\fP
99: moves a window \fIn\fP number of pixels or a relative amount of
100: space, depending on whether \fBpushabsolute\fP or \fBpushrelative\fP
101: is specified.
102: Use this variable in conjunction with \fBf.pushup,
103: f.pushdown, f.pushright\fP, or \fBf.pushleft\fP.
104: .IP \fBpushabsolute\fP/\fBpushrelative\fP
105: \fBpushabsolute\fP indicates that the number entered with push is
106: equivalent to pixels.
107: When an f.push (left, right, up, or down) function is called,
108: the window is moved exactly that number of pixels.
109: .IP
110: \fBpushrelative\fP indicates that the number entered with the push variable
111: represents a relative number. When an f.push function is
112: called, the window is invisibly divided into the number
113: of parts you entered with the push variable, and the window
114: is moved one part.
115: .IP "\fBresetbindings\fP, \fBresetmenus\fP, and \fBresetvariables\fP"
116: resets all previous function bindings, menus, and
117: variables entries, specified in any startup file in the
118: \fIuwm\fP search path, including those in the default environment.
119: By convention, these variables are entered first in the startup
120: file.
121: .IP \fBresizefont\fP=\fIfontname\fP
122: identifies the font of the indicator that displays in the
123: corner of the window as you resize windows.
124: See the \fI/usr/new/lib/X/font\fP directory
125: for a list of fonts.
126: .IP \fBreverse\fP/\fBnoreverse\fP
127: defines the display as black characters on a white
128: background for the window manager windows and icons.
129: .IP "\fBviconpad\fP=\fIn\fP"
130: indicates the number of pixels to pad an icon vertically.
131: Default is five pixels.
132: .IP "\fBvmenupad\fP=\fIn\fP"
133: indicates the amount of space in pixels that the menu is
134: padded on the right and left of the text.
135: .IP \fBvolume\fP=\fIn\fP
136: increases or decreases
137: the base level volume set by the
138: \fIxset(1)\fP command. Enter an integer from
139: 0 to 7, 7 being the loudest.
140: .IP \fBzap\fP/\fBnozap\fP
141: causes ghost lines to follow the window or icon from
142: its previous default location to its new location during
143: a move or resize operation.
144: .PP
145: .SH BINDING SYNTAX
146: .PP
147: "\fIfunction\fP=[\fIcontrol key(s)\fP]:[\fIcontext\fP]:\fImouse events\fP:\fI" menu name "\fP
148: .PP
149: Function and mouse events are required input. Menu name is
150: required with the \fIf.menu\fP function definition only.
151: .PP
152: .SH Function
153: .IP "\fBf.beep\fP" 15
154: emits a beep from the keyboard. Loudness is determined by
155: the volume variable.
156: .IP \fBf.circledown\fP
157: causes the top window that is obscuring another
158: window to drop to the bottom of the stack of windows.
159: .IP \fBf.circleup\fP
160: exposes the lowest window that is obscured by other
161: windows.
162: .IP \fBf.continue\fP
163: releases the window server display action after you
164: stop action with the \fBf.pause\fP function.
165: .IP \fBf.focus\fP
166: directs all keyboard input to the selected window.
167: To reset the focus to all windows, invoke \fIf.focus\fP from the root
168: window.
169: .IP \fBf.iconify\fP
170: when implemented from a window, this function converts the window
171: to its respective icon. When implemented from an icon,
172: f.iconify converts the icon to its respective window.
173: .IP \fBf.lower\fP
174: lowers a window that is obstructing a window below it.
175: .IP \fBf.menu\fP
176: invokes a menu. Enclose `menu name' in quotes if it
177: contains blank characters or parentheses.
178: .EX 0
179: .B
180: f.menu=[\fIcontrol key(s)\fP]:[\fIcontext \fP]:\fImouse events\fP:\fI" menu name "\fP
181: .EE
182: .IP \fBf.move\fP
183: moves a window or icon to a new location, which becomes the
184: default location.
185: .IP \fBf.moveopaque\fP
186: moves a window or icon to a new screen location. When using this
187: function, the entire window or icon is moved to the new screen
188: location. The grid effect is not used with this function.
189: .IP \fBf.newiconify\fP
190: allows you to create a window or icon and then position the window or
191: icon in a new default location on the screen.
192: .IP \fBf.pause\fP
193: temporarily stops all display action. To release the screen and
194: immediately update all windows, use the \fBf.continue\fP function.
195: .IP \fBf.pushdown\fP
196: moves a window down.
197: The distance of the push is determined by the push variables.
198: .IP \fBf.pushleft\fP
199: moves a window to the left.
200: The distance of the push is determined by the push variables.
201: .IP \fBf.pushright\fP
202: moves a window to the right.
203: The distance of the push is determined by the push variables.
204: .IP \fBf.pushup\fP
205: moves a window up.
206: The distance of the push is determined by the push variables.
207: .IP \fBf.raise\fP
208: raises a window that is being obstructed by a window
209: above it.
210: .IP \fBf.refresh\fP
211: results in exposure events being sent to the window server clients
212: for all unobscured or partially obscured windows.
213: The windows will not refresh correctly if the exposure events
214: are not handled properly.
215: .IP \fBf.resize\fP
216: resizes an existing window. Note that some clients, notably
217: editors, react unpredictably if you resize the window while the
218: client is running.
219: .IP \fBf.restart\fPn
220: causes the window manager application to restart,
221: retracing the \fIuwm\fP search path and initializing the variables it
222: finds.
223: .PP
224: .SH Control Keys
225: .PP
226: By default, the window manager uses meta as its control
227: key. It can also use ctrl, shift, lock, or null (no control key).
228: Control keys must be entered in lower case, and can be
229: abbreviated as: c, l, m, s for ctrl, lock, meta, and shift,
230: respectively.
231: .PP
232: You can bind one, two, or no control keys to a function.
233: Use the bar (|) character to combine control keys.
234: .PP
235: Note that client applications other than the window manager
236: use the shift as a control key. If you bind the shift key to a
237: window manager function, you can not use other client
238: applications that require this key.
239: .PP
240: .SH Context
241: .PP
242: The context refers to the screen location of the cursor when a
243: command is initiated. When you include a context entry in a
244: binding, the
245: cursor must be in that context or the function will not be
246: activated.
247: The window manager recognizes the following four contexts:
248: icon, window, root, (null).
249: .PP
250: The root context refers to the root, or background window,
251: A (null) context is indicated when the context field is left blank,
252: and allows a function to be invoked from any screen location.
253: Combine contexts using the bar (|) character.
254: .PP
255: .SH Mouse Buttons
256: .PP
257: Any of the following mouse buttons are accepted in
258: lower case and can be abbreviated as l, m, or r, respectively: left,
259: middle, right.
260: .PP
261: With the specific button, you must identify
262: the action of that button. Mouse actions
263: can be:
264: .IP "\fBdown\fP" 10
265: function occurs when the specified button is pressed down.
266: .IP \fBup\fP
267: function occurs when the specified button is released.
268: .IP "\fBdelta\fP" 10
269: indicates that the mouse must be moved the number of pixels specified
270: with the delta variable before the specified function is invoked.
271: The mouse can be moved in any direction
272: to satisfy the delta requirement.
273: .PP
274: .SH MENU DEFINITION
275: .PP
276: After binding a set of function keys and a menu name to
277: \fBf.menu\fP, you must define the menu to be invoked, using the
278: following syntax:
279: .EX
280: .B
281: \fBmenu \fP= " \fImenu name\fP " {
282: "\fIitem name\fP" : "\fIaction\fP"
283: .
284: .
285: .
286: }
287: .EE
288: .PP
289: Enter the menu name exactly the way it is entered with the
290: \fBf.menu\fP function or the window manager
291: will not recognize the link. If the menu name contains blank
292: strings, tabs or parentheses, it must be quoted here and in the
293: f.menu function entry.
294: You can enter as many menu items as your screen is long. You
295: cannot scroll within menus.
296: .PP
297: Any menu entry that contains quotes, special characters,
298: parentheses, tabs, or strings of blanks must be enclosed
299: in double quotes. Follow the item name by a colon (:).
300: .PP
301: .SH Menu Action
302: .IP "Window manager functions" 10
303: Any function previously described. E.g., \fBf.move\fP or \fBf.iconify\fP.
304: .IP "Shell commands"
305: Begin with an exclamation point (!) and set to run in
306: background. You cannot include a new line character within a shell
307: command.
308: .IP "Text strings"
309: Text strings are placed in the window server's cut buffer.
310: .IP
311: Strings with a new line character must begin with an
312: up arrow (^), which is stripped during the copy operation.
313: .IP
314: Strings without a new line must begin with the bar character (|),
315: which is stripped during the copy operation.
316: .PP
317: .SH Color Menus
318: .PP
319: Use the following syntax to add color to menus:
320: .EX
321: .B
322: \fBmenu \fP= "\fImenu name\fP" (\fIcolor1:color2:color3:color4\fP) {
323: "\fIitem name\fP" : (\fIcolor5 :color6\fP) : "\fI action \fP"
324: .
325: .
326: .
327: }
328: .EE
329: .IP "color1" 10
330: Foreground color of the header.
331: .IP color2
332: Background color of the header.
333: .IP color3
334: Foreground color of the highlighter, the horizontal band
335: of color that moves with the cursor within the menu.
336: .IP color4
337: Background color of the highlighter.
338: .IP "color5" 10
339: Foreground color for the individual menu item.
340: .IP color6
341: Background color for the individual menu item.
342: .PP
343: .SH Color Defaults
344: .PP
345: Colors default to the colors of the root window
346: under any of the following conditions:
347: .sp
348: 1) If you run out of color map entries, either before or during an
349: invocation of \fIuwm\fP.
350: .sp
351: 2) If you specify a foreground or background color that does
352: not exist in the RGB color database (\fI/usr/lib/rgb.txt\fP) both
353: the foreground and background colors default to the root window colors.
354: .sp
355: 3) If you omit a foreground or background color,
356: both the foreground and background colors default to the root
357: window colors.
358: .sp
359: 4) If the total number of colors specified in the startup file
360: exceeds the number specified in the \fImaxcolors\fP variable.
361: .sp
362: 5) If you specify no colors in the startup file.
363: .PP
364: .bp
365: .SH EXAMPLES
366: .PP
367: The following sample startup file shows the default window
368: manager options:
369: .EX
370: # Global variables
371: #
372: resetbindings;resetvariables;resetmenus
373: autoselect
374: delta=25
375: freeze
376: grid
377: hiconpad=5
378: hmenupad=6
379: iconfont=oldeng
380: menufont=timrom12b
381: resizefont=9x15
382: viconpad=5
383: vmenupad=3
384: volume=7
385: #
386: # Mouse button/key maps
387: #
388: # FUNCTION KEYS CONTEXT BUTTON MENU(if any)
389: # ======== ==== ======= ====== ============
390: f.menu = meta : :left down :"WINDOW OPS"
391: f.menu = meta : :middle down :"EXTENDED WINDOW OPS"
392: f.move = meta :w|i :right down
393: f.circleup = meta :root :right down
394: #
395: # Menu specifications
396: #
397: menu = "WINDOW OPS" {
398: "(De)Iconify": f.iconify
399: Move: f.move
400: Resize: f.resize
401: Lower: f.lower
402: Raise: f.raise
403: }
404:
405: menu = "EXTENDED WINDOW OPS" {
406: Create Window: !"xterm &"
407: Iconify at New Position: f.lowericonify
408: Focus Keyboard on Window: f.focus
409: Freeze All Windows: f.pause
410: Unfreeze All Windows: f.continue
411: Circulate Windows Up: f.circleup
412: Circulate Windows Down: f.circledown
413: }
414: .EE
415: .PP
416: .SH RESTRICTIONS
417: .PP
418: The color specifications have no effect on a monochrome system.
419: .PP
420: .SH FILES
421: .PP
422: /usr/lib/rgb.txt
423: /usr/new/lib/X/font
424: /usr/skel/.uwmrc
425: /usr/new/lib/X/uwm/system.uwmrc
426: $HOME/.uwmrc
427: .PP
428: .SH SEE ALSO
429: .PP
430: X(1), X(8C)
431: .SH AUTHOR
432: .PP
433: .ce 5
434: ``LICENSED FROM DIGITAL EQUIPMENT CORPORATION
435: COPYRIGHT (C) 1986
436: DIGITAL EQUIPMENT CORPORATION
437: MAYNARD, MA
438: ALL RIGHTS RESERVED.
439: .sp
440: THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
441: NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
442: EQUIPMENT CORPORATION. DIGITAL MAKES NO REPRESENTATIONS
443: ABOUT SUITABILITY OF THIS SOFTWARE FOR ANY PURPOSE. IT IS
444: SUPPLIED ``AS IS'' WITHOUT EXPRESS OR IMPLIED WARRANTY.
445: IF THE UNIVERSITY OF CALIFORNIA OR ITS LICENSEES MODIFY
446: THE SOFTWARE IN A MANNER CREATING DERIVATIVE COPYRIGHT
447: RIGHTS APPROPRIATE COPYRIGHT LEGENDS MAY BE PLACED ON THE
448: DERIVATIVE WORK IN ADDITION TO THAT SET FORTH ABOVE.''
449: .PP
450: M. Gancarz,
451: DEC Ultrix Engineering Group, Merrimack, New Hampshire, using some algorithms
452: originally by Bob Scheifler, MIT Laboratory for Computer Science
453:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.