Annotation of 43BSD/contrib/X/man/xnwm.1, revision 1.1.1.1

1.1       root        1: .TH XNWM 1 "19 July 1985" "X Version 10"
                      2: .SH NAME
                      3: xnwm - X window system manager process
                      4: .SH SYNOPSIS
                      5: .B xnwm
                      6: [ -cmsnftv2 ] [ @\fIborder\fP ] [ %\fIiconDelta\fP ]
                      7: .br
                      8:        [ fm=\fIfont\fP ] [ fi=\fIfont\fP ] [ fs=\fIfont\fP ]
                      9: .br
                     10:        [ l=\fIop\fP ] [ m=\fIop\fP ] [ r=\fIop\fP ]
                     11: .br
                     12:        [ \fIhost\fP:\fIdisplay\fP ] [ =\fIgeometry\fP ]
                     13: .SH DESCRIPTION
                     14: .PP
                     15: The window manager is a process that allows the user of a display running the
                     16: X window system to manipulate the windows on the screen.  X implements the
                     17: `desktop model' of overlapping windows;
                     18: .I xnwm
                     19: allows windows to be moved, iconified, and resized, allows the order of the
                     20: windows in the `stack' of overlapping windows to be manipulated, and allows
                     21: the keyboard focus to be attached to a window.  X allows windows to contain
                     22: other windows, but
                     23: .I xnwm
                     24: only manipulates the top-level windows and not any of the subwindows.
                     25: .PP
                     26: .I Xnwm
                     27: takes arguments
                     28: .I host
                     29: and
                     30: .I display,
                     31: which refer the the host and display number.
                     32: For example `xnwm amadeus:1' would start up the window manager
                     33: on display one on the machine amadeus.
                     34: By default,
                     35: .I xnwm
                     36: uses the host and display number stored in
                     37: the environment variable DISPLAY, and therefore they are not normally
                     38: specified.
                     39: .PP
                     40: .I Xnwm
                     41: has 2 modes of operation, `normal' and `popup',  In normal mode
                     42: .I xnwm
                     43: creates a menu window across the top of the screen.  To perform an
                     44: action, you click any mouse button in the appropriate menu box and then click
                     45: the same button in the window you wish to affect.
                     46: .I Xnwm
                     47: also reserves certain button/key
                     48: combinations and interprets them as operations on existing windows.
                     49: The key combination is specified in the command line with some subset of
                     50: the options:
                     51: .B -c
                     52: (Control),
                     53: .B -m
                     54: (Meta), and
                     55: .B -s
                     56: (Shift).  For example, if you specify the options
                     57: .B -cm
                     58: then the Control and Meta keys must be down at the time a mouse button is
                     59: depressed.
                     60: The option
                     61: .B -n
                     62: (None) means that no buttons need be held down.  This is discouraged
                     63: since it means that applications will never receive unshifted mouse
                     64: clicks.
                     65: If no combination is specified in the command line, Meta is assumed.
                     66: Note:  the key combination is not necessary when using functions from the
                     67: menu; it is only needed with the assigned button functions to distinguish
                     68: window manager operations from operations destined for the application
                     69: running within the window.
                     70: .PP
                     71: The window manager normally takes control of the screen at various
                     72: times to assure that the screen image remains correct while performing
                     73: window manager operations.  When this happens, requests from other
                     74: applications are temporarily suspended until the window manager
                     75: finishes the operation.  The option
                     76: .B -f
                     77: (no freeze) disables this.  If this option is specified, window
                     78: outlines for
                     79: .I Move
                     80: and
                     81: .I Resize
                     82: will flicker rather than remaining solid, and the background behind
                     83: popup windows (see later) will take longer to redraw.
                     84: .PP
                     85: The options
                     86: .B -t
                     87: (thin), 
                     88: .B -v
                     89: (vertical), and
                     90: .B -2
                     91: (2 rows) control the format of the menu bar.  In the absence of any of
                     92: these, the menu extends across the entire screen.  If the
                     93: .B -t
                     94: option is given, the menu bar will not extend fully across the screen;
                     95: instead there will be room at the right (convenient for, for example, a clock
                     96: window).  If the
                     97: .B -v
                     98: option is used, the menu windows are stacked vertically instead of spread
                     99: horizontally.  The
                    100: .B -2
                    101: option causes the menu windows to be in two rows, allowing room for a
                    102: terminal window the height of the screen while still allowing menu access.
                    103: Either of the last two options automatically selects the
                    104: .B -t
                    105: option.  The menu is located in the upper left corner of the screen by
                    106: default, but its location can be set with the
                    107: .B =\fIgeometry\fP
                    108: option as usual with X applications.  (Notice that there is no size
                    109: component, position information is used only.)
                    110: .PP
                    111: .I Xnwm
                    112: will use reverse video for the menu, the cursor, icon text, and the
                    113: frame around selected windows if the
                    114: .B -r
                    115: (reverse) option is used.
                    116: .PP
                    117: The border width around selected windows can be changed with the
                    118: .B @
                    119: argument; the default is 5 pixels.
                    120: .PP
                    121: The default font for displaying text is ``8x13''.  You can specify a different
                    122: font with the
                    123: .B fm=
                    124: (Menu font),
                    125: .B fi=
                    126: (Icon font), and the
                    127: .B fs=
                    128: (Size window font) options.
                    129: .PP
                    130: Initially, the left, middle, and right mouse buttons are bound to the
                    131: operations
                    132: .I Select, Raise,
                    133: and
                    134: .I Move.
                    135: You can change these bindings with
                    136: the
                    137: .B l=
                    138: (left),
                    139: .B m=
                    140: (middle), and
                    141: .B r=
                    142: (right) arguments.  Each should be followed by one of the letters "srmilzc",
                    143: representing, respectively,
                    144: .I Select, Raise, Move, Iconify, Lower, resiZe,
                    145: and
                    146: .I Circulate.
                    147: They may also be followed by nothing, in which case no function
                    148: is bound to that key.
                    149: .PP
                    150: Clicking any button that is not bound to the
                    151: .I Select
                    152: function in the background will cause the menu window to become
                    153: visible if it has become covered by other windows.  Double clicking the
                    154: background will cause the menu to move back to its original position.
                    155: .PP
                    156: In popup mode, the menu window is not normally displayed, but instead `pops
                    157: up' when a particular button is pressed.  To get popup mode, bind the letter
                    158: ``p'' to any of the three buttons as described above.  (You may also bind the
                    159: other buttons as desired.)  Whenever the bound button is clicked while the
                    160: appropriate combination of control, meta, and shift keys is depressed, or
                    161: any time a button that is not bound to the
                    162: .I Select
                    163: function is clicked in the background, the menu will appear beneath
                    164: the cursor.  You may then select any menu function you wish; after the
                    165: operation is completed the menu will disappear.  To make the menu disappear
                    166: without performing any operation, just move the cursor out of the menu area.
                    167: Note:  the mouse button bound to the popup function may not be rebound using
                    168: .B Assign.
                    169: Using popup mode with complicated screen images and with no freeze (the
                    170: .B -f
                    171: option) may cause some difficulties
                    172: if the menu obscures the image, since the applications will have to redraw
                    173: their windows after the menu goes away.
                    174: .PP
                    175: The available commands are described below.  For any of these
                    176: commands, if you press a button to start a command, and then want to abort
                    177: the command, simply press one of the other buttons before releasing the
                    178: first button.
                    179: .PP
                    180: .B Select
                    181: attaches the keyboard to a window, i.e., keyboard input will go
                    182: to that window (hierarchy) even when the mouse is outside the window.
                    183: It also
                    184: .B Raises
                    185: the selected window.  Selecting the background will detach the keyboard from
                    186: any window (actually, it attaches it to the background window).  If no window
                    187: is selected the keyboard input will go to the window which currently contains
                    188: the mouse cursor.  The selected window is highlighted by drawing a partial
                    189: frame around the window.  Selecting an icon allows the icon name to be
                    190: edited: the delete key deletes the last character, control-U deletes the
                    191: entire name, and other characters are appended to the current name.  Typing a
                    192: return restores the input focus to the most recent non-icon window selected.
                    193: .PP
                    194: .B Raise
                    195: raises the window to the top of any stack of overlapping windows.
                    196: .PP
                    197: .B Move
                    198: is used to move a window.
                    199: If you apply it to a window, an outline will be moved with
                    200: the mouse; when you release the button, the window will be moved.
                    201: .PP
                    202: .B (De)Iconify
                    203: will make a window into an icon.  If the mouse is moved more than a threshold
                    204: amount, or this is the first time the window has been iconified, the icon will
                    205: appear at the location on the screen where the button is released.  Otherwise,
                    206: the icon will reappear at its previous location.  This threshold may be
                    207: changed with the
                    208: %\fIiconDelta\fP
                    209: option.  Giving a negative value will disable this effect.  The default is 5
                    210: pixels.
                    211: .B (De)Iconify
                    212: will make the original window reappear at its former position on the screen
                    213: if it is applied to an icon.  The name displayed in the icon can be edited by
                    214: .B Selecting
                    215: the icon.
                    216: .PP
                    217: .B Lower
                    218: will `push' the window you point at to the bottom of any
                    219: stack of overlapping windows.
                    220: .PP
                    221: .B Resize
                    222: is used to resize a window by moving a corner or an edge.
                    223: If you apply it to a window, a rubber banded outline of the window will be
                    224: displayed and moving the mouse will change its size, leaving the opposite
                    225: corner or other edges fixed.  The corner or edge to be moved depends on the
                    226: where the mouse is when the button is pressed.  Imagine the window divided
                    227: with grid of nine rectangles.  If the mouse is in one of the four corner
                    228: rectangles or the center rectangle, then the corner closest to the mouse
                    229: will be moved; otherwise, the closest edge will be moved.  When the button
                    230: is released, the window will be resized.
                    231: .PP
                    232: .B Circulate
                    233: causes the lowest window in the stack of overlapping windows to be
                    234: .B Raised
                    235: ; successive applications will reveal every window in turn.
                    236: .PP
                    237: .B Assign
                    238: allows you to change the button bindings; to use it click any button in the
                    239: Assign menu window and then click the same button in any other function to
                    240: assign that function to that button.  To remove the assignment from a button,
                    241: double click the
                    242: .B Assign
                    243: window.
                    244: .SH X DEFAULTS AND OPTION SUMMARY
                    245: .TP 8
                    246: .B MenuFont (fm=\fIname\fP)
                    247: Set the default font for the menu.
                    248: .TP 8
                    249: .B SizeFont (fs=\fIname\fP)
                    250: Set the default font for the size window.
                    251: .TP 8
                    252: .B IconFont (fi=\fIname\fP)
                    253: Set the default font for icons.
                    254: .\" The @ causes problems in a .TP, so the next one is done out by hand
                    255: .PP
                    256: .B FrameWidth (@\fIvalue\fP)
                    257: .RS 8
                    258: Set the width of the frame around selected windows.
                    259: .RE
                    260: .TP 8
                    261: .B IconifyDelta (%\fIvalue\fP)
                    262: Set the threshold for moving icons.
                    263: .TP 8
                    264: .B ReverseVideo (-r)
                    265: Sets reverse video for the menu, icons, selection border, and cursor.
                    266: .TP 8
                    267: .B MenuFormat (-tv2)
                    268: Sets the format of the menu; should be some subset of
                    269: .B tv2
                    270: meaning thin, vertical, or 2 rows.
                    271: .TP 8
                    272: .B Freeze (-f)
                    273: If set to ``off'', disables
                    274: .I xnwm
                    275: taking control of the screen during operations.
                    276: .TP 8
                    277: .B KeyCombination (-csmln)
                    278: Sets the keys required to specify 
                    279: .I xnwm
                    280: operations; should be some subset of
                    281: .B csmln
                    282: meaning control, shift, meta, lock, and none.
                    283: .TP 8
                    284: .B LeftButton (l=value)
                    285: Sets the default left button function; should be one of
                    286: .B srmilzcp
                    287: .TP 8
                    288: .B MiddleButton (m=value)
                    289: Sets the default middle button function; should be one of
                    290: .B srmilzcp
                    291: .TP 8
                    292: .B RightButton (r=value)
                    293: Sets the default right button function; should be one of
                    294: .B srmilzcp
                    295: .TP 8
                    296: .B Geometry (={+-}xoff{+-}yoff)
                    297: Sets the location of the menu.
                    298: .SH FILES
                    299: .nf
                    300: .ta \w'/usr/athena/lib/vs/font        'u
                    301: /usr/new/lib/X/font            directory of fonts
                    302: .fi
                    303: .SH ENVIRONMENT
                    304: DISPLAY        - to get default host and display number
                    305: .SH "SEE ALSO"
                    306: X(8C)
                    307: .SH AUTHOR
                    308: Paul Asente, Stanford University, using some algorithms originally by
                    309: Bob Scheifler, MIT Laboratory for Computer Science

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.