jwm

Langue: en

Autres versions - même langue

Version: 2008-04-01 (debian - 07/07/09)

Section: 1 (Commandes utilisateur)

NAME

JWM - Joe's Window Manager

SYNOPSIS

jwm [options]

DESCRIPTION

JWM is a window manager for the X11 Window System.

OPTIONS

-display display
This option specifies the display to use; see X(1).

-exit

Exit JWM by sending _JWM_EXIT to the root window.

-h

Display a help message and exit.

-p

Parse the configuration file and exit. It is a good idea to use this after making modifications to the configuration file to ensure there are no errors.

-restart

Restart JWM by sending _JWM_RESTART to the root window.

-v

Display version information and exit.

FILES

/etc/jwm/jwmrc
The default JWM configuration file.
~/.jwmrc
Local configuration file. Copy the default configuration file to this location to make user-specific changes.

CONFIGURATION

OVERVIEW
Configuration of JWM is done by editing ".jwmrc". This file is XML making it easy to edit, either by hand or programmatically. The example.jwmrc gives an example configuration file. Before restarting JWM, it is a good idea to run "jwm -p" to make sure the configuration file is free of errors. Otherwise you may end up without a root menu.

ROOT MENU

The root menu in JWM is the primary way of starting programs. It also provides a way to restart or exit the window manager. The outer most tag is RootMenu. The following attributes are supported:
onroot list
Determine which buttons on the root window activate the menu. This is a list of integers specifying buttons. The default is "123". Note that multiple root menus may be specified by using different buttons for different menus. The range of possible button values is 0 to 9 inclusive.

height int

Height of each menu item in pixels. 0 indicates the largest menu item will determine the height. The default is 0.

labeled bool

Determines if a label appears at the top of the menu. Default is false.

label string

The label to display at the top of the menu. Default is "JWM".

Within the RootMenu tag, the following tags are supported:

Menu

This tag creates a submenu item. Any of the tags allowed within the RootMenu tag, including the Menu tag are allowed within this element. The following attributes are supported:
height int
Height of each menu item in pixels. 0 indicates the largest menu item will determine the height. The default is inherited from the parent menu.

label string

The label to use. No default.

icon string

The icon to use for this menu. No default.

labeled bool

Determines if a label appears at the top of the menu. Default is false.

Include

Include the contents of a file into the menu structure. The file must start with a "JWM" tag. The file is specified by the text of the tag. If the text starts with "exec:" then the output of a program is used.

Program

The Program tag provides a way to start an external program. The text in this tag is the command used to start he program. The following attributes are supported:
label string
The label to display. Default is the text of the tag.

icon string

The icon to use. No default.

Separator

This tag simply puts a line in the menu allowing menu divisions. No text or attributes are used.

Desktops

Add a desktop menu. This will add a submenu with a list of desktops that can be used to change the current desktop. The following attributes are supported:
label string
The label to use for the menu. The default is "Desktops".

icon string

The icon to use for this item. No default.

SendTo

Add a "send to" menu to the menu. After selecting an item from this menu, a window may be selected to send that window to the selected desktop. The following attributes are supported
label string
The label to use. The default is "SendTo".

icon string

The icon to use for this item. No default.

Stick

Add a stick/unstick window operation to the menu. After selecting this item a window may be selected to toggle the sticky state of that window. The following attributes are supported
label string
The label to use. The default is "Stick".

icon string

The icon to use for this item. No default.

Maximize

Add a maximize window operation to the menu. After selecting this item a window may be selected to toggle the maximized state of that window. The following attributes are supported
label string
The label to use. The default is "Maximize".

icon string

The icon to use for this item. No default.

Minimize

Add a minimize window operation to the menu. After selecting this item a window may be selected to minimize that window. The following attributes are supported
label string
The label to use. The default is "Minimize".

icon string

The icon to use for this item. No default.

Shade

Add a shade/unshade window operation to the menu. After selecting this item a window may be selected to toggle the shaded status of that window. The following attributes are supported
label string
The label to use. The default is "Shade".

icon string

The icon to use for this item. No default.

Move

Add a move window operation to the menu. After selecting this item a window may be selected to move that window. The following attributes are supported
label string
The label to use. The default is "Move".

icon string

The icon to use for this item. No default.

Resize

Add a resize window operation to the menu. After selecting this item a window may be selected to resize that window. The following attributes are supported
label string
The label to use. The default is "Resize".

icon string

The icon to use for this item. No default.

Kill

Add a kill window operation to the menu. After selecting this item a window may be selected to kill that window. The following attributes are supported
label string
The label to use. The default is "Kill".

icon string

The icon to use for this item. No default.

Close

Add a close window operation to the menu. After selecting this item a window may be selected to close that window. The following attributes are supported
label string
The label to use. The default is "Close".

icon string

The icon to use for this item. No default.

Restart

This tag adds a menu item to restart the window manager. The following attributes are supported:
label string
The label to use. The default is "Restart".

icon string

The icon to use. No default.

Exit

This tag adds a menu item to exit the window manager. If text is present within this tag, it is interpreted as a command to run when JWM exits. This can be used to start another window manager. The following attributes are supported:
label string
The label to use. The default is "Exit".

icon string

The icon to use. No default.

confirm bool

Determine if a confirm dialog appears before exiting. Default is true.

Note that confirm dialogs can be disabled completely at the compile-time.

TRAYS

One or more trays may be created via the Tray tag. This tag supports the following attributes:
autohide bool
Allows this tray to hide itself when not activated. Default is false.

x int

The x-coordinate of the tray. This may be negative to indicate an offset from the right of the screen.

y int

The y-coordinate of the tray. This may be negative to indicate an offset from the bottom of the screen.

width int

The width of the tray. 0 indicates that the tray should compute an optimal width depending on what it contains and the layout. 0 is the default.

height int

The height of the tray. 0 indicates that the tray should compute an optimal height depending on what it contains and the layout. 0 is the default.

border int

The width of the border. The default is 1. Valid values are between 0 and 32 inclusive.

layer int

The layer of the tray. The default is 8. Valid values are between 0 and 12 inclusive.

layout { vertical | horizontal }

The layout of the tray. The default is horizontal.

valign { fixed | top | center | bottom }

The vertical alignment of the tray. The default is fixed.

halign { fixed | left | center | right }

The horizontal alignment of the tray. The default is fixed.

Within this tag the following tags are supported:

Clock

Add a clock to the tray. The text of this tag is a command to run when the clock is clicked. This tag supports the following attributes:
format string
The format of the clock. See strftime(3).

width int

The width of the clock. 0 indicates that the width should be determined from the length of the text to be displayed.

height int

The height of the clock. 0 indicates that the height should be determined from the font used.

Dock

Add a dock for system notifications. This can be used by those programs that use the _NET_SYSTEM_TRAY_Sn selection. The size of the Dock is dynamic based on the size of the tray and the number of items contained. Only one Dock is allowed per instance of JWM.

Pager

Add a pager to the tray. This tag supports the following attributes:
width int
The width of the pager. 0 indicates that the width should be determined from the tray. 0 is the default.

height int

The height of the pager. 0 indicates that the height should be determined from the tray. 0 is the default.

Swallow

Swallow a program into the tray. The text of this tag gives the command to run. This tag supports the following attributes:
name string
The name of the program to swallow. This attribute is required.

width int

The width of the swallowed program. 0 indicates that the width should be determined from the tray and size requested from the program. 0 is the default.

height int

The height of the swallowed program. 0 indicates that the height should be determined from the tray and the size requested from the program. 0 is the default.

TaskList

Add a task list to the tray. This tag supports the following attribute:
maxwidth int
The maximum width of an item in the task list. 0 indicates no maximum. The default is 0.

TrayButton

Add a button to the tray. The text of this tag determines what action to take when the button is clicked. The following actions are supported:
root:n
Show root menu n. Note that the default TrayButton action is root:1.

exec: string

Execute a command.

showdesktop

Minimize all windows on the current desktop.

This tag supports the following attributes:

label string

A label to display. No default.

popup string

A string to be displayed for a popup. This will default to the value specified for label, if provided. If neither popup nor label are specified no popup will be shown.

icon string

An icon to display. No default.

INCLUDES

Other configuration files may be included under the JWM tag via the Include tag. The text of this tag specifies the location of an additional configuration file. The path may be relative to the loacation JWM was started, an absolute path, or a path referencing an environment variable (using '$'). The format of the configuration file is the same as the main configuration file.

GROUP SETTINGS

Program groups allow one to specify options which apply to a group of programs by name and/or class. A program group is created with the Group tag. As many program groups can be created as desired. Within the Group tag the following tags are supported:
Name
The title of a program to match to be in this group. This field is case sensitive. a wild card, *, may be used.
Class
The window class for a program to match to be in this group. This field is case sensitive. A wild card, *, may be used.
Option
An option for this group. Possible options are given below:
border
Causes windows in this group to have a border.

desktop:#

The desktop on which windows in this group will be started.

icon:string

The icon to be used for windows in this group.

layer:#

The layer on which windows in this group will be started.

maximized

Make windows in this group initially maximized.

hmax

Make windows in this group maximize horizontally.

vmax

Make windows in this group maximize vertically.

minimized

Make windows in this group initially minimized.

noborder

Causes windows in this group to be displayed without a border.

nolist

Causes the tray to ignore windows in this group.

notitle

Causes windows in this group to be displayed without a title bar.

pignore

Ignore initial window position requested by program.

shaded

Make windows in this group initially shaded.

sticky

Make windows in this group sticky.

title

Causes windows in this group to have a title bar.

WINDOW STYLE

The WindowStyle tag controls the look of window borders. Within this tag, the following tags are supported:
Font
The font used for title bars. See the FONTS section for more information.

Width

The width of window borders in pixels. The default is 4, the minimum is 1, and the maximum is 32.

Height

The height of window title bars in pixels. The default is 20, the minimum is 2, and the maximum is 64.

Active

The colors used for the active window. See the COLORS section for more information on colors. The following tags are supported:
Text
The color of text on the title bar.

Title

The color of the title bar (gradients are supported).

Corner

The color of the corner handles.

Outline

The color of the window outline.

Inactive

The colors used for inactive windows. See the COLORS section for more information on colors. The following tags are supported:
Text
The color of text on the title bar.

Title

The color of the title bar (gradients are supported).

Corner

The color of the corner handles.

Outline

The color of the window outline.

TRAY STYLE

The TrayStyle tag controls the look of trays. Within this tag the following tag is supported:
Font
The default tray font to use. See the FONTS section for more information.

Foreground

The default foreground color. See the COLORS section for more information.

Background

The default background color. See the COLORS section for more information.

TASK LIST STYLE

The TaskListStyle tag controls the look of task lists. This tag supports the following attribute:
insert mode
This determines how new items are added to the task list. Valid options are left and right. The default is right.

Within this tag the following tags are supported:

Font

The font used for program names. See the FONTS section for more information.

Foreground

The foreground color of the task list items. See the COLORS section for more information.

Background

The background color of the task list items (gradients are supported). See the COLORS section for more information.

ActiveForeground

The foreground color of an active item on the task list. See the COLORS section for more information.

ActiveBackground

The background color of an active item on the task list (gradients are supported). See the COLORS section for more information.

CLOCK STYLE

The ClockStyle tag controls the look of clocks. Within this tag, the following tags are supported.
Font
The font used. See the FONTS section for more information.

Foreground

The color of the text. See the COLORS section for more information.

Background

The background color. See the COLORS section for more information.

PAGER STYLE

The PagerStyle tag controls the look of pagers. Within this tag, the following tags are supported:
Outline
The color of the outline around windows shown in the pager. See the COLORS section for more information.

Foreground

The color of inactive windows shown in the pager. See the COLORS section for more information.

Background

The background color of inactive desktops shown in the pager. See the COLORS section for more information.

ActiveForeground

The color of active windows shown in the pager. See the COLORS section for more information.

ActiveBackground

The color of active desktops shown in the pager. See the COLORS section for more information.

MENU STYLE

The MenuStyle tag controls the look of the menus in JWM (this includes the root menu and window menus). Within this tag the following tags are supported:
Font
The font used on menus See the FONTS section for more information.

Foreground

The text color of inactive menu items. See the COLORS section for more information.

Background

The background color of inactive menu items. See the COLORSsection for more information.

ActiveForeground

The text color of active menu items. See the COLORS section for more information.

ActiveBackground

Text background color of active menu items (gradients are supported). See the COLORS section for more information.

POPUP STYLE

The PopupStyle tag controls the look of popup windows such as those shown when the mouse sits over a task list item. This tag supports the following attributes:
delay int
The delay in milliseconds before popups activate. The default is 600.

enabled bool

Determine if popups are shown. Default is true.

Within this tag the following tags are supported:

Font

The font to use. See the FONTS section for more information.

Outline

The color of the window outline. See the COLORS section for more information.

Foreground

The text color. See the COLORS section for more information.

Background

The background color. See the COLORS section for more information.

FONTS

Fonts for various parts of JWM are specified within a Font tag. The text of this tag determines the font to use. This can be either a standard X font string or, if compiled with XFT support, an XFT font string.

COLORS

Colors for various parts of JWM are specified within specific tags (discribed above). Colors may either be hex triplets in RGB format (for example, #FF0000 is red) or by a name recognized by the X server. For components that support gradients, two colors may be specified separated by a colon.

ICONS

Icons for windows that don't supply an icon via the _NET_WM_ICON hint are located by searching the icon search path(s) for an icon whose name (minus the ".xpm" or ".png" extension) matches the instance name of the window as returned in the WM_CLASS hint. If this lookup fails, a default icon is supplied. This icon will be displayed for the window on it's title bar and on the task list. Icons that are not an appropriate size will be scaled. Square icons work best.
For menu items, the icon path is searched for a match. the icon specified for a menu item must be the exact name of the icon file with the extension. If no match is found, a blank area will appear where the icon should appear. If an icon is not specified for any menu item in a menu, no space will be allocated for icons.
Zero or more IconPath tags may be specified. The text of this tag is assumed to be an absolute directory path to a directory containing XPM, PNG, and/or JPEG icons. When searching for icons, if multiple paths are provided, they will be searched in order until a match is made. Note that icon, PNG, JPEG, and XPM support are compile-time options.

KEY BINDINGS

Keyboard bindings in JWM are specified in Key tags. Either the key or keycode attributes must be specified to determine which key will cause an action. The optional attribute, mask, specifies what key mask, if any, must be in effect for the binding to match. Finally, the text of the Key tag is the action to perform.
One or more of the following key masks may be specified for mask:
A
The "Alt" key.
C
Control
S
Shift
H
Hyper
M
Meta
P
Super

The key specified in the key attribute must contain a valid key string for XStringToKeysym(3). These values are usually what one would expect (for example, the escape key is called "Escape").

Valid actions for a key binding are:

up
Move up. Not grabbed.
down
Move down. Not grabbed.
right
Move right. Not grabbed.
left
Move left. Not grabbed.
escape
Stop a move/resize or exit a menu. Not grabbed.
select
Make a menu selection. Not grabbed.
next
Move to the next window in the task list. Grabbed.
nextstacked
Move to the next window in the stacking order. Grabbed.
close
Close the active window. Grabbed.
minimize
Minimize the active window. Grabbed.
maximize
Maximize the active window. Grabbed.
shade
Shade the active window. Grabbed.
move
Move the active window. Grabbed.
resize
Resize the active window. Grabbed.
root:n
Show root menu n. Grabbed.
window
Show the window menu for the active window. Grabbed.
desktop
Switch to the next desktop. Grabbed.
desktop#
Switch to a specific desktop. To use this, "#" must be specified in the key section. The number 1 to the number of desktops configured are then substituted for "#". Grabbed.
exec:command
Execute command. Grabbed.
restart
Restart JWM. Grabbed.

Note that keys that are grabbed will not be available to applications other than JWM since JWM will interpret these. Also note that there are no default key bindings. Finally, it is possible to bind multiple key combinations to the same action.

MOUSE BINDINGS

Any button (other than the scroll wheel) on the root window will bring up the root menu unless otherwise specified via the onroot attribute of RootMenu. Scrolling up on the root window switches to the previous desktop and scrolling down switches to the next desktop.
The right button will show the window menu on the frame.
The left button will resize if on the border or move if in the title bar.
The middle button will move anywhere on the frame.
A double click on the title bar of a window will toggle the maximized state of the window. Scrolling up over the title bar will shade the window and scrolling down will unshade the window. When a menu is open, the scroll wheel will move through menus. When over the pager, the scroll wheel will switch desktops. When over a task list, the scroll wheel will switch windows.

DESKTOPS

Virtual desktops are controlled with the Desktops tag. Within this tag the following attribute is supported:
count int
The number of virtual desktops. The default is 4. Valid values are between 1 and 8 inclusive.

Within the Desktops tag the following tags are supported:

Background

The default background for desktops. The type attribute determines the type of background and the text contained within this tag is the value. Valid types are:
solid
A solid color. See the COLORS section for more information. This is the default.
gradient
A gradient color. See the COLORS section for more information.
image
A stretched image. This may be an XPM, PNG, or JPEG image. Note that support for XPM, PNG, and JPEG images must be compiled in and icon support is required.
tile
A tiled image. Like image, but the image is tiled instead of stretched.
command
A command to run for setting the background.

Desktop

Desktop-specific data. The name attribute may be specified to name the desktop (the default is the desktop number). Within this tag a Background tag may be specified for a desktop-specific background. See Background above for more information.

OTHER SETTINGS

The following tags may also be supplied:
DoubleClickDelta
The number of pixels the mouse can move during a double click. The default is 2. Valid values are between 0 and 32 inclusive.

DoubleClickSpeed

The maximum number of milliseconds between clicks for a double click. The default is 400. Valid values are between 1 and 2000 inclusive.

FocusModel

The focus model to be used. The default is "sloppy". Valid values are "click" (click to focus) and "sloppy" (focus follows mouse).

MoveMode

The move mode. The default is "opaque". Valid values are "opaque" and "outline". The optional coordinates attribute determines the location of the move status window. Possible values are:

off
Disable the status window.

corner

Place the status window in the corner of the screen.

window

Center the status window on the window being moved.

screen

Center the status window on the screen.

ResizeMode

The resize mode. The default is "opaque". Valid values are "opaque" and "outline". The optional coordinates attribute determines the location of the move status window. Possible values are:

off
Disable the status window.

corner

Place the status window in the corner of the screen.

window

Center the status window on the window being resized.

screen

Center the status window on the screen.

SnapMode

The snap mode. The default is "border". Valid values are "none" (for no snapping), "screen" (for snapping to the edge of the screen), and "border" (for snapping to the borders of windows and the screen). An optional attribute, distance, specifies the distance for snapping. The default is 5. Valid values are between 1 and 32 inclusive.

StartupCommand

A command to run when JWM starts.

ShutdownCommand

A command to run when JWM exits.

RestartCommand

A command to run when JWM restarts.

AUTHOR

Joe Wingbermuehle <joewing@joewing.net>

SEE ALSO

X(1)