AWM
Section: User Commands (1)
Updated: 23 July 1988
Index
Return to Main Contents
NAME
awm - Window Manager X Client Application
SYNOPSIS
awm
[
-f
filename
] [
-e
execfile
] [
-b
] [
-i
]
DESCRIPTION
The awm command is a window manager client
application of the window
server. It is heavily based on an earlier work by M. Gancarz
of Digital Equipment Corporation (see the end of this document for
appropriate acknowledgments).
When awm is invoked, it traces a predefined search path
to locate any awm startup files. If no startup files
exist, awm initializes itself from a built-in default file.
If startup files exist in any of the following locations,
their contents are merged together to create awm's configuration.
In the case of contention, the bindings in the last file found
override previous specifications. Files in the awm
search path are:
$LIBDIR/awm/system.awmrc (where $LIBDIR is defined in awm's Makefile)
$HOME/.awmrc
To use only the settings defined in a single startup file,
include the variables, resetbindings, resetmenus and
resetgadgets at the top of that specific startup file.
OPTIONS
- -f filename
-
Names an alternate file as an awm startup file.
- -e execfile
-
Names a file to exec (typically a shell script invoking other clients) after
all startup files have been loaded. This is useful for minimizing the number of
map/unmaps that occur when titlebars are added.
- -b
-
Causes awm to ignore the system startup file.
- -i
-
Causes awm to ignore $HOME/.awmrc.
STARTUP FILE VARIABLES
Variables are typically entered first, at the top of the startup
file. Because of a merge with the resource manager, very few variables
are set here now. The directives resetbindings, resetmenus
and resetgadgets are still allowed, as are gadget declarations of
the form:
gadget[n]=expr
Where n is a positive integer indicating the gadget to initialize and
expr is one of the following:
- string or string [ ^ attributes ]
-
Set the name of the gadget to string. The name will be
painted in the gadget box with the gadget.font resource
or an overriding font attribute (see below).
string may contain embedded non-alphanumeric characters
in the form of \# where # is one or more decimal digits (i.e. \54)
or \c where c is a character in the standard C string
literal set (i.e. n, r, t, f). This is useful if you've specified
a gadget font with glyphs in it (such as cursor) and you want to paint
a specific glyph from it in a gadget box. Many such glyphs are not
represented by ascii characters.
- (string) [ ^ attributes ]
-
Load a pixmap from the file named by string and
tile the gadget with it (see also: path).
Additional attributes may be specified after a '^' (caret)
character in the form:
- offset|gravity|foreground|background|font
-
Any omitted parameters will be set to default values.
-
offset is an integer specifying how far to place this
gadget from its nearest neighbor (or an edge). Default
offset is gadget.pad, or 2 if gadget.pad is not
defined.
-
gravity is one of NoGravity, LeftGravity,
RightGravity or CenterGravity. NoGravity specifies that
the gadget is to be placed opposite of wherever the last gadget was
placed.
LeftGravity specifies that the gadget should stick to
the left of the title bar, RightGravity to the right and
CenterGravity to the center.
-
foreground and background specify the colors used to
tile the gadget or draw the text.
-
font is the name of the font you want the gadget's name
drawn in. This overrides the gadget.font setting for this
gadget.
-
The default values for attributes are 0, NoGravity, black
(reverse: white) and white (reverse: black), the setting
of gadget.font.
It is important to note that in the absence of a gravity specification
(i.e. we've defaulted to NoGravity), the window manager will
automatically place a gadget on the side opposite of the last gadget
placed. If it's the first gadget placed, it will go to the right.
Thus in the absence of any gravity (or offset) specifications,
the window manager will place gadgets in a right-left-right fashion
until all gadgets have been placed.
For example:
gadget[0] = "die"
gadget[1] = (resize.b) ^ 2 | red | orange
gadget[2] = (iconbox.b) ^ | LeftGravity
gadget[3] = "\56" ^ | LeftGravity | green | black | cursor
These declarations will create 4 gadget boxes, situated in the
following manner:
The first gadget box will be created wide enough to print the
word "die" in it (in whatever gadget font has been defined) and
will be placed on the right side (since it hasn't chosen a gravity)
against the edge (since it hasn't chosen an offset).
Background and foreground colors will be black and white
(assignment depending on whether reverse is set).
The second gadget box will be tiled with the contents of the
file "resize.b" (assuming that it's a valid bitmap file) and
will go on the left side (since it also has no gravity and the
last one went on the right). It will be offset from the edge by 2
pixels since there was an offset for it. Foreground will be
red, background will be orange.
The third gadget will be tiled with the contents of "iconbox.b"
and will be placed against the second gadget on the left hand
side since we specified a gravity. Colors will be black and white
(depending on reverse).
The fourth gadget will display glyph #56 from the cursor font
in green and black (it's gumby of course).
IMPORTANT: Gadgets may be declared in any order, but you are
not allowed to leave gaps, i.e..it's perfectly acceptable to
declare gadgets in the order 0, 2, 3, 1, but not legal to
declare gadgets in the order 0, 3, 2, 4 as gadget #1 has been
omitted. This restriction may be removed in the future, but
for now you'll get a diagnostic and awm will exit.
All other variables controlling window manager behavior are described in
the X DEFAULTS section of this man page.
BINDING SYNTAX
Mouse buttons may be bound to particular window manager functions with:
"function=[modifier key(s)]:[context]:mouse events:" menu name "
or
"function=[modifier key(s)]:[context]:mouse events:" text action "
Function and mouse events are the only required fields. The menu name is
required with the f.menu function definition only.
Similarly, text action is required only with the f.action
function definition.
Function
- f.action
-
Invokes a text action. `text' should be in quotes with a preceding
"action" character (one of '^', '!' or '|'). The syntax is identical to
menu text actions which are discussed in greater detail under the Menus
section of this document.
f.action=[modifier key(s)]:[context ]:mouse events:action" text "
- f.beep
-
emits a beep from the keyboard. Loudness is determined by
the volume variable.
- f.circledown
-
causes the top window that is obscuring another
window to drop to the bottom of the stack of windows.
- f.circleup
-
exposes the lowest window that is obscured by other
windows.
- f.continue
-
releases the window server display action after you
stop action with the f.pause function.
- f.destroy
-
calls XKillClient on the selected window. Use with caution!! Binding it to
naked mouse buttons is probably not a good idea!
- f.exit
-
exits the window manager. If you've started awm from
xinit (actually sort of useful now that the -e flag
has been added), this will also exit the window system.
- f.focus
-
directs all keyboard input to the selected window.
To reset the focus to all windows, invoke f.focus from the root
window.
- f.iconify
-
When implemented from a window, this function converts the window
to its respective icon. When implemented from an icon,
f.iconify converts the icon to its respective window.
- f.lock
-
locks the screen by displaying random (and somewhat pretty) patterns.
The lock can be exited by typing in your password or pulling the power
cord for your system out of its socket.
- f.lower
-
lowers a window that is obstructing a window below it.
- f.menu
-
invokes a menu. Enclose `menu name' in quotes if it
contains blank characters or parentheses.
f.menu=[modifier key(s)]:[context ]:mouse events:" menu name "
- f.move
-
moves a window or icon to a new location, which becomes the
default location.
- f.moveopaque
-
moves a window or icon to a new screen location. When using this
function, the entire window or icon is moved to the new screen
location. The grid effect is not used with this function.
- f.neaten
-
neatens the desktop using the RTL neaten package. See the X DEFAULTS
for the resources necessary to customize this somewhat complex feature.
This function only works if awm has been compiled with the -DNEATEN
flag (which compiles in the neaten package). Invoking this function without
this is a noop (though a warning diagnostic is printed to stderr).
See the INSTALLATION section of the README document for more details.
- f.newiconify
-
allows you to create a window or icon and then position the window or
icon in a new default location on the screen.
- f.pause
-
temporarily stops all display action. To release the screen and
immediately update all windows, use the f.continue function.
- f.pushdown
-
moves a window down.
The distance of the push is determined by the push variables.
- f.pushleft
-
moves a window to the left.
The distance of the push is determined by the push variables.
- f.pushright
-
moves a window to the right.
The distance of the push is determined by the push variables.
- f.pushup
-
moves a window up.
The distance of the push is determined by the push variables.
- f.raise
-
raises a window that is being obstructed by a window
above it.
- f.refresh
-
results in exposure events being sent to the window server clients
for all exposed or partially exposed windows.
The windows will not refresh correctly if the exposure events
are not handled properly.
- f.resize
-
resizes an existing window. Note that some clients, notably
editors, react unpredictably if you resize the window while the
client is running.
- f.restart
-
causes the window manager application to restart,
retracing the awm search path and initializing the variables it
finds.
- f.[no]decorate
-
adds or removes "decorations" on the selected window. What decorations are
added (or deleted) depends on the settings of various booleans and
client-specific resources (see: SPECIAL RESOURCES).
The booleans titles, gadgets and borderContext.width
currently influence awm's choice of default decorations.
Modifier Keys
It is preferable to use meta as a modifier key for awm (or
any other window manager, for that matter), but one may also
use ctrl, shift, lock, or null (no modifier key).
Modifier keys must be entered in lower case, and can be
abbreviated as: c, l, m, s for ctrl, lock, meta, and shift,
respectively. It's also permissible to refer to the the modifier
keys directly as "mod1, mod2, mod3, mod4 or mod5". A mouse button
with no modifier key(s) is often referred to as a "naked" mouse
button.
You may bind any number of modifier keys to a function,
use the bar (|) character to combine them.
Context
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 or the function will not be
activated.
The window manager recognizes the following seven contexts:
icon, window, root, title, gadget[n] (where n is the
gadget number), border and (null).
The icon context refers to any icon and may be safely bound without
interfering with window events.
The window context refers to application windows and should be
used carefully to avoid usurping button events that applications
may want for their own purposes.
The root context refers to the root, or background window.
The title context refers to the titlebar area of a window, if
one exists.
The gadget context (with mandatory index) specifies a given
gadget box. Binding to a gadget that's undefined (not initialized to
anything) is an error.
The border context refers to the artificial border area created when
the resource borderContext.width is defined (see borderContext.width
under X DEFAULTS). Using this context when no border area exists
(i.e. borderContext.width is not defined) is a noop.
A (null) context is indicated when the context field is left blank,
and allows a function to be invoked from any screen location. This
is basically equivalent to specifying all the possible contexts.
Combine contexts using the bar (|) character.
Mouse Buttons
Any of the following mouse buttons are accepted (in lower case)
and may be abbreviated as l, m, or r, respectively: left,
middle, right.
With the specific button, you must identify
the action of that button. Mouse actions
can be:
- down
-
function occurs when the specified button is pressed down.
- up
-
function occurs when the specified button is released.
- delta
-
indicates that the mouse must be moved the number of pixels specified
with the delta variable before the specified function is invoked.
The mouse can be moved in any direction
to satisfy the delta requirement.
MENU DEFINITION
After binding a set of function keys and a menu name to
f.menu, you must define the menu to be invoked, using the
following syntax:
menu = (string) " menu name " {
"item name" : "action"
.
.
.
}
The string in parenthesis is an optional argument which
names a pixmap file (see also: path) to use as
the menu title rather than just using the name of the menu. This
is generally only useful if you're using pixmaps for the menu
panes as well (see below). Though the menu name isn't displayed
when you specify string, you still need to specify one for awm
to use when looking up the binding to it.
Enter the menu name exactly the way it is entered with the
f.menu function or the window manager will not recognize the link.
If the menu name contains blank strings, tabs or parentheses, it must
be quoted here and in the f.menu function entry. If you haven't
chosen to display a pixmap title in string, the menu name will be
displayed at the top of the menu in whatever font has been chosen
for menu.boldFont (or its default).
You can enter as many menu items as your screen is long. You
cannot scroll within menus.
Any menu entry that contains quotes, special characters,
parentheses, tabs, or strings of blanks must be enclosed
in double quotes. Follow the item name by a colon (:).
A special case is an item surrounded by parenthesis, which
designates the item name as the name of a pixmap file to
tile the menu pane with. Given a pixmap for the menu title as well
(see above), it's possible to create menus that are totally
pictorial in nature. There are, however, two caveats. Due to the fact
that it's easier to do, the pixmaps are used as backgrounds
for the menu panes rather than painting them on whenever a given pane in
exposed. This has rather ugly consequences if one of the pixmaps
(or a line of text if a pane is textual) is larger than the others.
Since the server replicates pixmaps over the entire window, it results
in a "wallpaper" effect on the smaller pixmaps. The solution is to make all
the pixmaps the same size and/or not mix in any text items that will need a
wider pane.
The second problem is that the check marks and pull-right indicators are
always displayed in fixed positions on the right and left edges of menu
panes. If your pixmaps try to use this real-estate, they may be partially
covered by a check mark or pull-right pixmap. Design your menus with this
in mind.
Menu Action
- Window manager functions
-
Any function previously described, e.g., f.move or f.iconify.
Using f.menu results in a pull-right pane which you can use to "walk"
between menus (see below). A "walk" can be done by moving the cursor onto
the pull-right arrow displayed at the right edge of the pane, or by clicking
another button in the pane while holding the original one down.
- Walking menus
-
Select the function f.menu and separate it from the menu name with
a colon (:) i.e.
menu = "foo" {
Walking Menu: f.menu: "NextMenu"
}
- Text actions
-
There are two kinds of special "actions" involving arbitrary strings
of text. These are:
- Shell commands
-
Begin with an exclamation point (!) and set to run in
background. You cannot include a new line character within a shell
command.
- Text strings
-
Text strings are placed in the window server's cut buffer. The strings
must be preceeded by one of:
-
A carat (^), which is stripped off, signifies that
the string will automatically be followed by a newline (I.E using '^'
causes one to be added at the end).
-
A vertical bar (|), also stripped off, signifies the the string
should not end with a newline.
- Booleans
-
Any boolean variable previously described, e.g., reverse or
autoraise. The current state of a boolean variable in a menu
will be indicated with a check mark (a check mark means the boolean is
set to true). Note that the boolean is *not* preceeded by "awm." as
it is in the resource database.
SPECIAL NOTE:
Menus bound to title bars, gadget boxes or borders cause (where logical)
the selected menu action to occur automatically on the client window
as opposed to having to select a window for the action. However, actions
requiring mouse tracking (i.e. move, resize) will usually not work well
in this context. While this limitation will be eliminated in the near future,
it is suggested that you use this feature to do things that do not
require mouse tracking, such as raise, lower, iconify, etc.
Color Defaults
Colors default to the colors of the root window
under any of the following conditions:
- 1)
-
If you run out of color map entries, either before or during an
invocation of awm.
- 2)
-
If you specify a foreground or background color that does
not exist in the RGB color database ($LIBDIR/rgb.txt).
- 3)
-
If you omit a foreground or background color.
- 4)
-
If you specify no colors in the resource database.
X DEFAULTS
A number of variables that used to be specified in the .uwmrc file (of
uwm, for those familiar with it) are now retrieved from
the resource database. When a value cannot be found, a default
(compiled into awm) is substituted. A much wider range of
options can be specified this way and it is suggested that you
read the following section carefully before bringing up
awm.
In the descriptions below, variable names are listed in boldface,
their type in parenthesis, and their default value in double quotes.
All resources are preceeded by an implied "awm.", as is the standard.
I.E. "autoraise" would be specified as: "awm.autoraise: ..." in the
resource database.
- autoraise (boolean) ``off''
-
Automatically raise a window to the top when it gains the
input focus. See also: raiseDelay
- autoselect (boolean) ``off''
-
Specifies that the pointer be placed over the first
item in a menu, rather than the title, when the menu is popped up.
- background (string)
-
The default background color for all other color
choices in awm. If reverse is not set, this defaults
to white, otherwise it defaults to black.
References to background in this document
refer to this resource.
- border.foreground (boolean) ``foreground''
-
Specifies the border color to use for all windows (this color
may be drawn solid or stippled, depending on the window focus and
the setting of border.hilite).
- border.hilite (boolean) ``on''
-
Specifies whether or not window border colors are to
be changed on focus changes. On focus in, the window border is
changed to solid border.foreground. On focus out, it is changed to a
"gray" stipple.
- borderContext.background (string) ``background''
-
Background color to use for border context pixmap.
Value is meaningless if borderContext.width and borderContext.pixmap are undefined.
- borderContext.boldPixmap (string) ``none''
-
The name of a pixmap file to load and tile the border context area
with when the focus is in. If this is defined, and hilite is set,
focus changes will cause the border context background to alternate between
borderContext.pixmap and borderContext.boldPixmap. If borderContext.boldPixmap
is defined, but borderContext.pixmap is not, a blank pixmap will be used in place of
borderContext.pixmap.
- borderContext.cursor (int) ``XC_cross''
-
Glyph (in decimal) to retrieve from cursor font for use in
border context.
- borderContext.foreground (string) ``foreground''
-
Foreground color to use for border color pixmap.
Value is meaningless if borderContext.width and borderContext.pixmap are undefined.
- borderContext.pixmap (string) ``background
-
Pixmap to display as border context area background.
Value is meaningless is borderContext.width is undefined (or set to zero).
Used exclusively as the background unless borderContext.boldPixmap and
hilite are defined.
- borderContext.width (int) ``0''
-
Number of pixels wide to make the border context. Though
functions may be bound to the border context (see: Context)
without setting this, they will be impossible to invoke due to the
fact that there will be nothing to click on. The border context
should not be confused with the actual window border. It is an
artificial area around each window that resembles a border.
- delta (int) ``1''
-
Number of pixels that must be moved over before a "delta" action
is taken (see: BINDING SYNTAX).
- foreground (string)
-
The default foreground color for all other color
choices in awm. If reverse is not set, this defaults
to black, otherwise it defaults to white.
References to foreground in this document
refer to this resource.
- frameFocus (boolean) ``off''
-
[De]highlight when the pointer [leaves] enters the "frame" of the
window (the frame includes the client window, title bar and border context
areas, if present). Setting this option also causes the focus to follow
the pointer so that keyboard input will go the the client regardless of
where the pointer is in the "frame".
- freeze (boolean) ``off''
-
Lock out all other clients during certain window manager tasks,
such as move and resize.
- gadget.border (int) ``1''
-
The width of all gadget borders in pixels.
- gadget.font (string) ``fixed''
-
Which font to use for (textual) gadget labels.
- gadget.pad (int) ``3''
-
The number of pixels to pad a gadget from its neighbor if it has
no offset defined.
- gadgets (boolean) ``off''
-
Display gadgets in title bars, if any are declared.
- grid (boolean) ``off''
-
Display a finely ruled grid when positioning or resizing
windows/icons.
- hilite (boolean) ``off''
-
Causes the following actions to occur when a window gains the input
focus:
1. If showName is on:
1a. If title.boldFont is defined, the window name is redrawn
in this font.
1b. If it's not, then the window name is redrawn in reverse video.
2. If title.boldPixmap is defined, the background of the title bar
is set to it.
3. If borderContext.boldPixmap is defined, the background of the border
context area is set to it.
-
On focus out, the window name is redrawn in title.font
the title background to title.pixmap and the border context
to borderContext.pixmap, respectively.
-
If border.hilite is undefined, this variable will set it
automatically.
Note that most icon variables only affect icons owned by awm.
Except for foreground and background colors, client created
icons are left alone.
- icon.background (string) ``background''
-
Icon (pixmap) background color.
- icon.backpixmap (string) ``grey''
-
Pixmap to display as icon background for text icons.
Note that this pixmap is only used for "text" icons, I.E. icons
in the uwm style of a line of editable text. This should
typically be cross hatch pattern or some similar background weave
that will be displayed surrounding the text. For "pictoral" icons,
use icon.defpixmap.
See also: path, icon.foreground, icon.background,
icon.defpixmap.
- icon.border (string) ``icon.foreground''
-
Color to use for icon borders.
- icon.borderWidth (int) ``2''
-
Width of icon border in pixels.
- icon.defpixmap (string) ``xlogo''
-
For windows that don't specify their own pixmaps, use this image.
This is only useful if icon.labels is turned on.
- icon.font (string) ``8x13''
-
Which font to use for icon text.
- icon.foreground (string) ``foreground''
-
Icon (pixmap) foreground color.
- icon.hPad (int) ``2''
-
Number of pixels to pad icon text horizontally.
- icon.labels (boolean) ``off''
-
Specifys that icons should be displayed in the "twm" style. I.E.
The icon pixmap (or icon.defpixmap if the window has no icon
pixmap) with the icon name displayed underneath (or above, if
icon.labelTop is set).
- icon.labelTop (boolean) ``off''
-
Specifys that "labeled" icons should have the text portion displayed
on top, rather than the bottom. Only useful if icon.labels is
set.
- icon.vPad (int) ``2''
-
Number of pixels to pad icon text vertically.
- icon.text.background (string) ``icon.background''
-
Background color to use for icon text.
- icon.text.foreground (string) ``icon.foreground''
-
Foreground color to use for icon text.
- installColormap (boolean) ``false''
-
Install a given window's colormap when the pointer enters it.
When the pointer leaves, the default colormap is installed.
- menu.background (string) ``background''
-
Menu background color.
- menu.boldFont (string) ``8x13bold''
-
Which font to use for (textual) menu panes. Currently,
the only pane using this font is the title pane (unless, of course,
it's a pixmap).
- menu.border (string) ``foreground''
-
Menu border color.
- menu.borderWidth (int) ``2''
-
Width of menu border in pixels.
- menu.delta (int) ``20''
-
Number of pixels to move on a "pull-right" pane before the submenu
attached to it is popped up.
- menu.font (string) ``8x13''
-
Which font to use in (textual) menu panes.
- menu.foreground (string) ``foreground''
-
Menu foreground color.
- menu.itemBorder (int) ``1''
-
Width of individual (menu) item borders.
- menu.pad (int) ``2''
-
Number of pixels to pad menu text/pixmaps vertically.
The following resources pertain only to the RTL Neaten package and are
ignored if awm has not been compiled with that option (see the
INSTALLATION file).
- neaten.absMinWidth (int) ``64''
-
Indicates the amount of space in pixels, that is used
as the absolute minimum width of a window during the
neaten operation.
- neaten.absMinHeight (int) ``64''
-
Indicates the amount of space in pixels, that is used
as the absolute minimum height of a window during the
neaten operation.
- neaten.retainSize (boolean) ``true''
-
Forces to windows to be at least their current size.
Windows may overlap as a side effect.
- neaten.fill (boolean) ``true''
-
Allows windows to grow to their maximum size during
the neaten operation. Normally a window will grow only to
the maximum of its desired (based on the WM_NORMAL_HINTS property)
and current size.
- neaten.fixTopOfStack (boolean) ``true''
-
Fixes the size and location of the window at the top of
the window hierarchy. If necessary, this window will
overlap even other windows which can not be tiled.
- neaten.keepOpen (boolean) ``true''
-
Constrains all windows to remain open during the neaten
operation. No windows will be iconized. This operation
may cause windows to overlap.
- neaten.usePriorities (boolean) ``true''
-
Assigns the windows priorities based on their stacking
order (windows closer to the top in the stacking order
are given higher priorities). Priorities are used when
determining size and location of windows on the screen.
- neaten.primaryIconPlacement (string) ``Top''
-
Selects the side of the screen where icons are first
placed. Legal values are: Top, Left, Bottom, Right and
Closest (to its current position).
- neaten.secondaryIconPlacement (string) ``Left''
-
Determines where along the specified primary side
the icon should be placed. Legal values are those for
neaten.primaryIconPlacement plus Center.
Not used if neaten.primaryIconPlacement is Closest
- normali (boolean) ``on''
-
Make sure that icons created with f.newiconify stay wholly within
the root window (on screen), regardless of attempted placement.
If off, put icons
wherever the cursor is placed.
- normalw (boolean) ``on''
-
Make sure that windows mapped with f.newiconify are placed on-screen,
regardless of cursor position.
If off, put windows wherever the cursor is placed.
- path (string) ``null''
-
A number of items (titles, menus, etc) now allow you to specify
a pixmap file, rather than just a text string to display. Since it
would be tedious to type in full pathnames for these files if they
all lived in the same places, the directory(s) named by path are
searched if the pixmap file's pathname does not begin with a slash (/)
or tilde (~) and is not found in the current directory.
-
path is a white-space separated list of one or more
directories to search, much like that used by the Unix C-shell. The ~
notation used to designate your (or someone else's) home directory is
supported, but wildcards are not.
- popup.background (string) ``background''
-
Background color to use for pop-up text.
- popup.borderWidth (int) ``2''
-
Width of pop-up window border in pixels.
- popup.font (string) ``9x15''
-
Which font to use for popup window text.
- popup.foreground (string) ``foreground''
-
Foreground color to use for pop-up text.
- popup.pad (int) ``4''
-
Number of pixels to pad pop-up text horizontally.
- pushRelative (boolean) ``on''
-
When a window is pushed, push 1/push of the window.
If off, move window push pixels.
- raiseDelay (int) ``100''
-
Amount of time in milliseconds to wait (while window has focus)
before raising. If pointer leaves window before time elapses, raise is not
performed.
- reverse (boolean) ``on''
-
Reverse background/foreground colors for titles, menus,
gadget windows, popup windows, etc. In the absence of any color
specifications, this results in black-on-white.
- rootResizeBox (boolean) ``on''
-
Put the resize (popup) window in the upper left corner of the root
window, rather than on the window being resized. This saves a potentially
expensive refresh that would occur when the popup was unmapped. If your server
supports save-unders,
it's generally (but not always) better to turn saveUnder
on instead.
- saveUnder (boolean) ``off''
-
Use save-unders for menus and pop-up windows. If the server does not
support save-unders, this action does nothing.
- showName (boolean) ``on''
-
Display the window name in a title (assuming that the window is titled
in the first place).
- title.background (string) ``background''
-
Background color to use for title pixmap.
- title.boldFont (string) ``none''
-
Which font to use for titlebar labels if focus is and
hilite is enabled. If this isn't set, and hilite
is, the title text will be displayed with title.font in reverse video.
- title.boldPixmap (string) ``none''
-
The name of a pixmap file to load and tile titlebars with when
the focus is in. If this is defined, and hilite is set, focus changes
will cause title backgrounds to alternate between title.pixmap
and title.boldPixmap. If title.boldPixmap is defined, but
title.pixmap is not, a blank pixmap will be used in place of
title.pixmap.
- title.cursor (int) ``XC_left_ptr''
-
Glyph (in decimal) to retrieve from cursor font for use in
title bar.
- title.font (string) ``vtsingle''
-
Which font to use for titlebar labels. Used exclusively unless
title.boldFont and hilite are set.
- title.foreground (string) ``foreground''
-
Foreground color to use when drawing background (both normal and
bold) pixmaps.
- title.pad (int) ``2''
-
Number of pixels to pad title bar text vertically.
- title.pixmap (string) ``none''
-
The name of a pixmap file to load and tile titlebars with.
This background is use exclusively unless the title.boldPixmap is
defined and hilite is set.
- title.text.background (string) ``title.background''
-
Background color to use when drawing title bar text.
- title.push (boolean) ``false''
-
When adding a title bar or border context to a window, put the border or
title bar area at the current x, y position and "push" the window down to
make room. For windows with an upper edge at or near the top of the screen,
this gives the most asthetically pleasing results. For windows near the
bottom, it does not.
If set to false, the title bar/border will be added "on top" and the window
will not be moved down. Note that the setting of this resource also affects
how the window is maniplated during resizes, title removals, etc.
- title.text.foreground (string) ``title.foreground''
-
Foreground color to use when drawing title bar.
- titles (boolean) ``off''
-
Put title bars on all windows (both existing windows and new ones as
they're created. See also: f.title
- volume (int) ``2''
-
Specifies the bell volume (delta on volume set with xset).
- wall (boolean) ``off''
-
Restrict window movement to edges of screen (rootwindow).
This feature is fairly handy and should probably be bound to a menu
so that it can readily be turned on and off.
- warpOnDeIconify (boolean) ``off''
-
Warp pointer to upper right corner of window on de-iconify.
- warpOnIconify (boolean) ``off''
-
Warp pointer to center of icon on iconify.
- warpOnRaise (boolean) ``off''
-
Warp pointer to upper left corner of window on raise.
- windowName.offset (int) ``0''
-
Number of pixels from the right or left edge of a titlebar
to print the window name (assuming that showName is set).
If this value is negative, the name will be offset nameOffset
(plus the name length) pixels from the right edge. If the value
is positive, then the name will be offset nameOffset pixels
from the left edge. If the value is zero, the name will be centered.
Since the length of a window name can vary dynamically, this value
will be adjusted, when necessary, to ensure that the name is visible in
the title bar.
- zap (boolean) ``off''
-
Causes ghost lines to follow the window or icon from its previous
location to its new location during a move, resize or iconify operation.
SPECIAL RESOURCES
- name.wm_option.autoRaise (boolean)
-
- name.wm_option.borderContext (boolean)
-
- name.wm_option.gadgets (boolean)
-
- name.wm_option.icon.labels (boolean)
-
- name.wm_option.title (boolean)
-
- name.wm_option.foreground (string)
-
- name.wm_option.background (string)
-
These resources determine whether or not a given application really wants
a title, gadgets, border context area, to be auto-raised etc etc..
The application's CLASS and NAME (in the WM_CLASS property) are checked
against the string supplied for name (for example:
Xclock*wm_option.title: off).
-
Specifying one of these resources overrides any other boolean
settings (I.E. awm.titles or awm.gadgets) and
may be used to turn things on and off at the application and/or
class level for applications, regardless of awm's settings.
Note: Both class and name resources are checked, and in that order. Thus
specific applications may override settings for their class, if desired.
-
These resources are ``special'' as they are checked for under the
application's name, not awm's; I.E. xclock.wm_option.autoRaise
is not awm.xclock.wm_option.autoRaise as one might think.
The resources wm_option.foreground and wm_option.background are
only meaningful if awm has been compiled with -DRAINBOW. They allow
the border color to be specified for individual applications/classes.
EXAMPLES
The following sample startup file shows the default window
manager options:
# Global variables
#
resetbindings
resetmenus
#
# Mouse button/key maps
#
# FUNCTION KEYS CONTEXT BUTTON MENU(if any)
# ======== ==== ======= ====== ============
f.menu = meta : :left down :"WINDOW OPS"
f.menu = meta : :middle down :"EXTENDED WINDOW OPS"
f.move = meta :w|i :right down
f.circleup = meta :root :right down
#
# Menu specifications
#
menu = "WINDOW OPS" {
"(De)Iconify": f.iconify
Move: f.move
Resize: f.resize
Lower: f.lower
Raise: f.raise
}
menu = "EXTENDED WINDOW OPS" {
Create Window: !"xterm &"
Iconify at New Position: f.lowericonify
Focus Keyboard on Window: f.focus
Freeze All Windows: f.pause
Unfreeze All Windows: f.continue
Circulate Windows Up: f.circleup
Circulate Windows Down: f.circledown
}
RESTRICTIONS
The color specifications have no effect on a monochrome system.
There's currently no way to specify a keysym in place of a button
(up/down/delta) specification. This restriction will be removed in
the near future.
FILES
$LIBDIR/rgb.txt
$LIBDIR/font
/usr/skel/.awmrc
$LIBDIR/awm/system.awmrc
$HOME/.awmrc
SEE ALSO
X(1), X(8C)
AUTHOR
Copyright 1988
Ardent Computer Corporation
Sunnyvale, Ca
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of Ardent Computer
Corporation or the author not be used in advertising or publicity
pertaining to distribution of the software without specific, written
prior permission.
COPYRIGHT 1985, 1986
DIGITAL EQUIPMENT CORPORATION
MAYNARD, MASSACHUSETTS
ALL RIGHTS RESERVED.
THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE AND
SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION.
DIGITAL MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THIS SOFTWARE FOR
ANY PURPOSE. IT IS SUPPLIED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY.
IF THE SOFTWARE IS MODIFIED IN A MANNER CREATING DERIVATIVE COPYRIGHT RIGHTS,
APPROPRIATE LEGENDS MAY BE PLACED ON THE DERIVATIVE WORK IN ADDITION TO THAT
SET FORTH ABOVE.
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted, provided
that the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting documentation,
and that the name of Digital Equipment Corporation not be used in advertising
or publicity pertaining to distribution of the software without specific,
written prior permission.
M. Gancarz,
DEC Ultrix Engineering Group, Merrimack, New Hampshire, using some algorithms
originally by Bob Scheifler, MIT Laboratory for Computer Science
J. Hubbard, U.C. Berkeley, Berkeley, Ca. Ardent Computer, Sunnyvale,
Ca. Various modifications and enhancements using code developed by M.
Gancarz and Digital Equipment Corp.
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- STARTUP FILE VARIABLES
-
- BINDING SYNTAX
-
- Function
-
- Modifier Keys
-
- Context
-
- Mouse Buttons
-
- MENU DEFINITION
-
- Menu Action
-
- Color Defaults
-
- X DEFAULTS
-
- SPECIAL RESOURCES
-
- EXAMPLES
-
- RESTRICTIONS
-
- FILES
-
- SEE ALSO
-
- AUTHOR
-
This document was created by
man2html,
using the manual pages.
Time: 06:10:17 GMT, December 12, 2024