uwm(1X)
NAME
uwm - X Window System window manager
SYNTAX
uwm [ options ]
DESCRIPTION
The uwm command provides a window manager client application that takes advantage of a graphical display and mouse.
When invoked, uwm traces a predefined search path for any uwm start-up files. If start up files exist in any of the specified locations, uwm adds the specifications to its built-in default specifications. Files in the uwm search path are: /usr/lib/uwm/system.uwmrc
$HOME/.uwmrc
As it reads in items contained in these start-up files, uwm uses the last definition it encounters for each item, when the defined values for that item differ.
When uwm finishes processing all start-up files, it emits a beep from the keyboard.
OPTIONS
−f filenameSpecifies an alternate file as a uwm start-up file.
−bSpecifies that uwm bypass default bindings and the system startup file.
DEFAULT MENU COMMANDS
By default, when it starts up, uwm provides both the Window Operations and Extended Window Operations menus. To display the Window Operations menu (labeled WINDOW OPS), press and hold down both the Compose Character key and the left mouse button. To display the Extended Window Operations menu (labeled EXTENDED WINDOW OPS), press and hold down both the Compose Character key and the middle mouse button.
Commands that can be invoked from these menus are:
(De)IconifySpecifies that the selected window be changed to a small graphical representation (icon) or that an icon be changed back to its window at its original location and size.
MoveSpecifies that the selected window be moved to a new default screen location.
ResizeSpecifies that the size of the selected window be changed. For more information, see the f.resize function.
LowerSpecifies that the selected window be moved to the bottom of the window stack.
RaiseSpecifies that the selected window be moved to the top of the window stack.
Create WindowSpecifies that the xterm command be executed to create a terminal emulation window.
Iconify at New PositionSpecifies that the selected window be iconified or deiconified at a position indicated by moving the mouse pointer.
Focus Keyboard on WindowSpecifies that all keyboard input be focused into the selected window. For more information, see the f.focus function.
Freeze All WindowsSpecifies that the window server is to buffer any window input and output and dedicate its resources to other processing. For more information, see the f.pause function.
Unfreeze All WindowsSpecifies that the window server is to unfreeze all windows and update each window with any output that was buffered while it was frozen. For more information, see the f.continue function.
Circulate Windows UpSpecifies that the last window be raised to the top of the window stack.
Circulate Windows DownSpecifies that the first window be lowered to the bottom of the window stack.
RESTRICTIONS
The color specifications have no effect on monochrome displays.
STARTUP FILE SPECIFICATIONS
The start-up information used to establish your uwm environment contains three specification groupings:
VariablesModify how uwm executes a specified action.
FunctionsAssign the action that is executed when a mouse button or character key is pressed, or when the pointer is moved to a specified screen location.
MenusDefine each menu that you can display and from which you can select defined items.
To use only the settings defined in a single startup file, include the variables resetbindings, resetmenus, resetvariables at the top of that specific file.
VARIABLE DEFINITIONS
Variables are typically entered first, at the top of the startup file. Because they cause any values listed before them to be discarded, resetbindings, resetmenus, and resetvariables head the list. The variables that can be specified in the start-up file are:
autoselect/noautoselectThe autoselect variable specifies that uwm is to place the mouse pointer on the first menu item when a menu is initially displayed. The noautoselect variable specifies that uwm is to place the mouse pointer on the menu header (title). The default is noautoselect.
delta=nThe delta variable specifies that the mouse pointer must be moved n screen pixels before uwm invokes those functions that subsequently are defined with delta mouse action. The default is 1.
freeze/nofreezeThe freeze variable specifies that uwm is to freeze the screen (not allow screen updates) and lock all other client applications out of the server while executing certain functions, for example, f.move or f.resize. In addition, the freeze variable prevents the window grid or window box from flickering. The nofreeze variable specifies that uwm is to allow screen updates while executing all functions. The default is freeze.
grid/nogridThe grid variable specifies that uwm is to display a resize or move window grid when invoking the f.resize and f.move functions. The nogrid variable specifies that uwm is to display a window box (outline) in place of the grid. The default is grid.
hiconpad=nThe hiconpad variable specifies that uwm is to pad the width of a text icon’s sides with n pixels. The default is 4 pixels.
hmenupad=nThe hmenupad variable specifies that uwm is to pad the width of a menu’s sides with n pixels. The default is 4 pixels.
iconfont=fontThe iconfont variable specifies that uwm is to use the indicated text font for those icons that it creates. The /usr/lib/Xfont directory contains all the available fonts. The default is 6x10.
maxcolors=nThe maxcolors variable specifies that uwm is to use a maximum of n colors at any one time. If maxcolors is specified and if the indicated number of colors is exceeded, uwm uses the colors set for the root window (screen background). If maxcolors is not specified, however, uwm uses as many colors as it can. The default is that it is unspecified.
menufont=fontThe menufont variable specifies that uwm is to use the indicated font for all menu text. The /usr/lib/Xfont directory contains all the available fonts. The default is timrom12b.
normali/nonormaliThe normali variable specifies that uwm is to let an icon only be placed entirely on the screen when invoking the f.newiconify function. The nonormali variable specifies that uwm is to let an icon be placed partially off-screen when invoking the f.newiconify function. The default is normali.
normalw/nonormalwThe normalw variable specifies that uwm is to let a window only be placed entirely on the screen when invoking the f.newiconify function. The nonormalw variable specifies that uwm is to let a window be placed partially off-screen when invoking the f.newiconify function. The default is normalw.
push=nThe push variable specifies the distance that uwm is to use when invoking the f.pushup, f.pushdown, f.pushright, and f.pushleft functions. The default is 5.
pushabsolute/pushrelative
The pushabsolute variable specifies that uwm is to use pixel as the unit of measure for the push variable. The pushrelative variable specifies that uwm is to use as the unit of measure 1/nth of the window size, where n is set by the push variable. For example, if the pushrelative variable is listed and if the push variable is specified as 2, uwm moves the window one half (1/2) its width when invoking the f.pushleft function. The default is pushrelative.
resetbindingsThe resetbindings variable specifies that uwm is to reset the key, mouse, and context bindings to those subsequently specified in the current start-up file.
resetmenusThe resetmenus variable specifies that uwm is to reset the menu definitions to those subsequently specified in the current start-up file.
resetvariablesThe resetvariables variable specifies that uwm is to reset the variables to those subsequently specified in the current start-up file.
resizefont=fontThe resizefont variable specifies that uwm is to use the specified font for the window size display when invoking the f.resize function. See the /usr/lib/Xfont directory for a list of fonts. The default is 6x10.
reverse/noreverseSpecifies that uwm interchange the foreground and background colors when default colors are used for window manager windows and icons. The default is reverse.
viconpad=nThe viconpad variable specifies that uwm is to pad n pixels above and below an icon name. The default is 4.
vmenupad=nThe vmenupad variable specifies that uwm is to pad n pixels above and below a menu name and each menu item. The default is 4.
volume=nThe volume variable specifies that uwm is to set the keyboard bell volume to the indicated intensity (n) when invoking the f.beep function. The intensity can be 0 (softest) through 7 (loudest). The default is 4.
warpdi/nowarpdiThe warpdi variable specifies that uwm is to move the mouse pointer to the right corner of the window after deiconifying an icon. The nowarpdi variable specifies that uwm is not to move the mouse pointer after deiconifying an icon. The default is warpdi.
warpi/nowarpiThe warpi variable specifies that uwm is to move the mouse pointer to the center of the icon after iconifying a window. The nowarpi variable specifies that uwm is not to move the mouse pointer after iconifying a window. The default is warpi.
warpr/nowarprThe warpr variable specifies that uwm is to move the mouse pointer to the left corner of the title bar after raising a window. The nowarpr variable specifies that uwm is not to move the mouse pointer after raising a window. The default is warpr.
zap/nozapThe zap variable specifies that uwm is to display ghost lines when invoking the f.move or f.resize functions. The nozap variable specifies that uwm is not to display these ghost lines. The default is nozap.
FUNCTION DEFINITIONS
"function=[control key(s)]:[context]:mouse events:"menu name"
Function and mouse events are required input. The menu name is required only with the f.menu function definition.
Functions
f.beepEmits a beep from the keyboard. Loudness is determined by the volume variable.
f.circledownLowers the top-most window to the bottom of the window stack.
f.circleupRaises the lower-most window to the top of the window stack.
f.continueUnfreezes all windows, that is, allows them to be updated. This function should always be used in conjunction with f.pause.
f.exitExits the current uwm session.
f.focusDirects all keyboard input to the specified window. To reset the focus to follow the mouse cursor, invoke the f.focus function from the root window. This function takes a window argument.
f.iconifyIconifies a window or deiconifies an icon. This function takes a window argument.
f.lowerLowers the specified window to the bottom of the window stack. This function takes a window argument.
f.menuDisplays the specified, defined pop-up menu. This function takes a window argument.
f.moveMoves the specified window to a new default screen location. This function takes a window argument.
f.moveopaqueMoves the specified window with the mouse pointer, instead of first moving the window grid and then moving the window. This function takes a window argument.
f.newiconifyIconifies and positions a window or icon at the specified screen location. This function takes a window argument.
f.pauseFreezes all windows so they cannot be updated. This function should always be used in conjunction with f.continue. This function takes a window argument.
f.pushdownMoves a window down the amount specified by the push variable. This function takes a window argument.
f.pushleftMoves a window to the left the amount specified by the push variable. This function takes a window argument.
f.pushrightMoves a window to the right the amount specified by the push variable. This function takes a window argument.
f.pushupMoves a window up the amount specified by the push variable. This function takes a window argument.
f.raiseRaises the specified window to the top of the window stack. This function takes a window argument.
f.refreshUpdates the entire screen.
f.resizeResizes the specified window. Some clients, notably editors, may react unpredictably if you resize the window while the client is running. This function takes a window argument.
f.restartRestarts uwm and causes it to reread all the uwm start-up files.
For those functions that take a window argument, select the window or icon that is to be affected after you have selected the function from a menu. To select the window or icon, place the mouse pointer in the window or icon and click (press and release) the mouse button that was used to display the menu.
Control Keys
By default, the window manager uses meta as its control key. However, any of the following control keys (abbreviations in parentheses) can be specified:
Ctrl (c)
Lock (l)
Meta (Compose Character) (m)
Shift (s)
Control keys must be entered in lower case and can be abbreviated.
You can bind one, two, or no control keys to a function. Use the bar (|) character to combine control keys.
Use of the shift key alone is not recommended, because client applications other than the window manager use the shift as a control key. If you bind the shift key to a window manager function, you cannot use other client applications that require this key.
Contexts
The context refers to the screen location of the cursor when a command is initiated. When you include a context entry in a binding, the cursor must be in that context for the function to be activated. The window manager recognizes the following four contexts (abbreviations in parentheses):
icon (i)
window (w)
root
null
The root context refers to the root (background) window. A null context is indicated when the context field is left blank and allows a function to be invoked from any screen location. To combine contexts, use the bar (|) character.
Mouse Buttons
The following mouse buttons (abbreviations in parentheses) can be specified:
Left (l)
Middle (m)
Right (r)
Mouse buttons must be entered in lower case and can be abbreviated.
With the specific button, you must identify the action of that button. The following mouse actions can be specified:
downAction is invoked when the button is pressed.
upAction is invoked when the button is released.
deltaAction is invoked when a mouse button is pressed down and the pointer is moved the number of pixels specified by the delta variable. The mouse can be moved in any direction to satisfy the delta requirement.
During an operation, pressing a second mouse button before releasing the first aborts the operation.
MENU DEFINITIONS
After binding a set of function keys and a menu name to f.menu, you must use the following syntax to define the menu to be invoked:
menu = "menu name" {
"item name" : "action"
.
.
.
}
Enter the menu name exactly the way it is entered with the f.menu function or the window manager will not recognize the link. You cannot scroll within menus. Any menu entry that contains quotes, special characters, parentheses, tabs, or strings of blanks must be enclosed in double quotation marks. Follow the item name by a colon (:).
Menu Actions
The following menu actions can be specified:
FunctionThe specified function can be any window manager function.
Shell commandThe specified shell command must begin with an exclamation point (!) and must run in background. You cannot include a new line character within a shell command.
Text stringThe specified text string is placed in the window server’s cut buffer. Strings with a new line character appended must begin with an up arrow (^). The up arrow (^) is stripped during the copy operation. Strings without a new line character appended must begin with the bar character (|). The bar character (|) is stripped during the copy operation.
Color Menus
Use the following syntax to add color to menus:
menu = menu name (color1:color2:color3:color4) {
item name: (color5:color6): action
item name: (color5:color6): action
.
.
.
}
color1Specifies the foreground color (text) of the menu header.
color2Specifies the background color of the menu header.
color3Specifies the foreground color for menu highlighting.
color4Specifies the background color for menu highlighting.
color5Specifies the foreground color (text) for a menu item.
color6Specifies the background color for a menu item.
Color Defaults
Colors default to the colors of the root window under any of the following conditions:
•If you run out of color map entries, either before or during an invocation of uwm.
•If you specify a foreground or background color that does not exist in the RGB color database (/usr/lib/rgb.txt), both the foreground and background colors default.
•If you omit a foreground or background color, both the foreground and background colors default.
•If you specify more colors that the number specified by the maxcolors variable.
•If you specify no colors in the startup file.
FILES
/usr/lib/rgb.txt
/usr/lib/uwm/system.uwmrc
$HOME/.uwmrc