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