Content-type: text/html
Man page of sithwm
sithwm
Section: (1)
Updated: February 13, 2006
Index
Return to Main Contents
NAME
sithwm - Minimalist Window Manager for X
SYNOPSIS
sithwm [ -m<modifiers>
] 'sithwm command' ...
DESCRIPTION
sithwm
is a minimalist window manager based on evilwm, extended to feature
seamless virtual desktop and an application menu.
sithwm
has a comfortable mix of explicit and implicit focus. The current
window border is black, with other windows left gray.
You can use the mouse to manipulate windows by holding down the
Windows(TM) key and clicking a button anywhere in the client
window. The default controls are:
- Button 1
-
Move window.
- Button 2 or 3
-
Resize window.
Most keyboard controls are used by holding down the Windows(TM) key,
then pressing a key. Available functions are:
- Return
-
Pop the application menu.
- Escape
-
Delete current window. Hold Shift as well to force a kill.
- Insert
-
Lower current window.
- S, X, E, D
-
Move window left, down, up or right (16 pixels). Holding Shift resizes the
window instead.
- W, R, Z, C
-
Move window to top-left, top-right, bottom-left or bottom-right of screen.
- H, Shift-H
-
Move backward, forward in window size and position history.
- B, Shift-B
-
Move backward, forward in view position history, this history is
usually just 2 positions long so this really just toggles.
- I
-
Show information about current window, raise it and so on.
- A
-
Maximize current window.
- Tab
-
Cycle through windows on screen, with a pop-up display, holding Shift
reverses the direction.
- Caps Lock
-
Works the same way as tab, only that it will only cycle trough the
windows on the current view. The Tab keys can be made to work this
way too putting 'xact next,local' in your .sithwmrc.
- Q
-
or
- Caps Lock (without the Windows(TM) key)
-
Circulate the three topmost windows on the current view, holding Shift
will circulate through all windows on the current view.
- G
-
Warp mouse to next screen.
- F
-
Fix or unfix current window.
- 1--9
-
Switch view. Holding Shift will throw the current window to
the other view instead.
- Left,
-
Pan the view. Holding Shift will throw the current window to
the other view instead.
To make
sithwm
exit, you have to kill the process.
OPTIONS
- -m<modifiers>
-
override the default keyboard modifiers used to grab keys for window
manager functionality,
modifiers are used for keyboard controls,
mouse button controls and cycling windows (default: the Windows(TM)
key).
- sithwm command
-
Perform a command, these are identical to commands in the .sithwmrc
file, command on the command line must be a single argument, thus the
command must be appropriately quoted if it contain spaces, which it
usually would.
COMMANDS
- fn font-name
-
specify a font to use when resizing or displaying window titles.
- c<x> color
-
Set the color, values for <x> are
b - Background for menues and popups (white).
c - Caption background (yellow).
d - Used for drag frames, setting this will cause undefined behavior.
e - Non-focused border (gray).
f - Focused border (black).
g - Highlight in menu (yellow).
h - Highlight in popup view (yellow).
i - Text and foreground (black).
- bw border-width
-
width of window borders in pixels.
- popup =<width>{xX}<height>+<xoffset>+<yoffset> <stack-width> <time-in>
-
Set the position, stack width and time in of the popup, defaults are: "=320x320+30+30 256 0"
Setting <width> to 0 will disable the map part of the popup.
<stack-width> is the width of the stack part of the popup window (the
part containing the scrolling list of windows), specified in pixels.
It is added to the <width> parameter to give the total width of the
popup.
<time-in> is the time that elapses from the Tab or pan keys are pressed to the
popup appears in 64ths of a second.
- pt1 <timeout>
-
Set the timeout for the captions, in 64ths of a second, default is 450.
- pt2 <timeout>
-
Set the timeout for the popup, in 64ths of a second, default is 450.
- pt3 <timeout>
-
Set the timeout for the menu, in 64ths of a second, default is 450.
- snap num
-
enable snap-to-border support. num gives the proximity in pixels to
snap to. Zero means no snap, default is 32.
- swindow num
-
If num is 0 - dont snap to windows, if 1 also snap to windows, default
is 0.
- app name/class
-
match an application by instance name and class (for help in finding these,
use the
xprop
tool to extract the
WM_CLASS
property). Subsequent
geometry
and
sticky
command will apply to this match.
- geometry geometry
-
apply a geometry (using a standard X geometry string) to applications matching
the last
app.
- sticky
-
specify that application is to start with a sticky client window.
- nosoliddrag
-
draw a window outline while moving or resizing.
- lock lock-command
-
Sets command to perform on idle timeout, defaults to not lock, I
suggest using "xlock -mode blank", to remain in concord with the
philosophy of sithwm.
- xaction action,sithwm-function-modifiers min_size
-
Specify modifiers to apply to x-events actions also set the minimum
size of windows the function shall apply to. Actions are:
"enter" - the mouse enters a window.
"new" - a new window pops up.
"deleted" - action taken on the window that get selected when the active window gets killed.
This command can also be used to modify the behaviour of other
functions, simply put the function there in place of the action and
list the modifiers, these modifiers will be forced on for all
invocations of that functions. This has perhaps questionable value,
but can at least be used to force 'local' behaviour for all 'next'
functions. For symmetry there should have been a command to force
modifiers off, there isn't.
See below for a description of modifiers.
- menu
-
"name"
Define a sub menu.
- cmd
-
"name" "shell_command"
Define a menu command.
- end
-
End the definition of a sub menu.
Menus can be nested to any depth, and "cmd" definitions can be placed
at any level, including the top level.
- key
-
Modifier[,Modifier...]
keycode
function[,modifier...]
parameters...
Bind functions to keys, see below for a definitions of functions and modifiers.
- qc
-
value
Qualify caption; if value is zero disable captions, if 1 (the default)
enable them.
Functions
The functions are:
- sh
-
Name command
Run shell command in subprocess.
- menu
-
start_pos
Pop the application menu, start_pos, if zero or larger is the
level to start the menu at. A start_pos of -1 makes the menu
start off where it left the last time.
- pan
-
x y
Pan the view in the virtual desktop, x/y is in quarter views.
- next
-
Next window (as in "Tab").
- circulate
-
n size
Circulate through the n topmost windows larger than size.
size is measured in width+height.
- hist
-
offs
Circulate through window history, offs==-1 => previous.
- view_hist
-
offs
Circulate through view history, offs==-1 => previous.
- kill
-
Kill.
- lower
-
Lower current window.
- resize
-
x y
resize current window by adding x and y to the width and
height respectively..
- move
-
x y
move current window.
- drag
-
resize
Initiate a drag action on current window, if the resize
parameter is 1 perform a resize.
- next_screen
-
Warp to the next screen.
Function modifiers
The following are modifiers which can be used combined with the
functions to modify their behaviour.
- maxim
-
Maximize/half/quad sequence
- fix
-
Fix or unfix current window.
- raise
-
Raise window to top and update position/size.
- lower
-
Lower window.
- info
-
Pop up info caption.
- mouse
-
move mouse to center of window.
- abs
-
Make moves absolute, or - for 'kill': Absolutely, seriously kill!!
- view
-
Apply moves etc, to view ie. physical screen values rather
than pixels.
- set_view
-
Pan view to make the current window visible.
- focus
-
Set focus to window.
- popup
-
Use the popup window where applicable.
Keyboard modifiers
The keyboard modifiers are specified as: "std", "shift", "control",
"alt", "mod1", "mod2", "mod3", "mod4", "mod5"
The "std" modifier does not correspond to any X modifier, but can be
set by the -m<modifiers> option, and can be used in the configuration
file so that default modifiers can be changed without having to change
a lot of configuration file lines. The default value for "std" is "mod4"
which corresponds to the Windows(TM) key on all keyboard I have come
across.
Use the xev(1) utility from X to explore keyboard event names and
modifiers.
FILES
On startup sithwm will search for commands in the following files
/etc/X11/sithwm/menudefs.hook
/usr/share/sithwm/default.sithwmrc
$HOME/.sithwmrc
The Application Menu
Pops up when you push Windows(TM)-Return. There is no mouse control,
navigate with the arrow keys, Home, End etc. Letters keys will take
you to the next entry starting with that letter. Return will
select the current entry.
Sithwm will maintain a menu configuration file on Debian systems. The
menudefs file will be kept up to date as packages are installed or
removed but you will need to restart sithwm to see the changes. For
other systems there's some self-explanatory examples in the
default.sitwmrc file.
STARTING SITHWM
If you use a session manager from GNOME or KDE or something like that,
you'll have to read its documentation to see how to set which window
manager it uses.
However if you're just using a standard X desktop, you can start sithwm
by just changing your ~/.xinitrc file. Here's a pretty standard sample
file:
-----CUT HERE-----
[ -f $HOME/.Xdefaults ] && xrdb $HOME/.Xdefaults
xmodmap -e 'clear Lock'
/usr/bin/sithwm &
exec xclock -digital -padding 2 -g -0+0
-----CUT HERE-----
Note that in this case 'xclock' is the magic process (the one that if
you kill it, your session dies). You could change it around and have
sithwm be your magic process if you prefer, but note that that would
make you vulnerable to crashes in sithwm and make it harder to switch
WM live. xmodemap will clear the useless lock feature from the
Caps Lock key.
Personally I use a different method, my .xinitrc:
-----CUT HERE-----
#!/bin/sh
until xsetroot -solid '#36444f';do sleep 1;done
xmodmap -e 'clear Lock'
xrdb $HOME/.Xdefault
if xsetroot -display :0.1 -solid '#36444f'
then
AUXDIS=:0.1
else
AUXDIS=:0
fi
export AUXDIS
exec sithwm
exec xterm -display $AUXDIS -C
-----CUT HERE-----
And then I start X with this script, rather than xinit.
-----CUT HERE-----
#!/bin/sh
DISPLAY=:0
export DISPLAY
NO=0
while ls /tmp/.X${NO}-lock
do
let NO++
done
DISPLAY=:${NO}
nohup X $DISPLAY -noreset -v -s 1 -ar1 300 -ar2 30 $XARGS &
nohup sh $HOME/.xinitrc &
sleep 20
-----CUT HERE-----
This script tries to find a free server number in case there's
already servers running. It then starts a server with that number and
starts .xinitrc. The until-loop around xsetroot in .xinitrc will wait
until the X server is operative before it starts. The sleep holds on
to the console for a while just for luck.
BUGS
You tell me...
AUTHOR
olr, <dartholr@darkside.no>
based on: evilwm, written by Ciaran Anscomb <sithwm@6809.org.uk>.
based on: aewm, written by Decklin Foster <fosterd@hartwick.edu>.
based on: 9wm, written by David Hogan <dhog@cs.su.oz.au>.
SEE ALSO
xprop(1)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- COMMANDS
-
- Functions
-
- Function modifiers
-
- Keyboard modifiers
-
- FILES
-
- The Application Menu
-
- STARTING SITHWM
-
- BUGS
-
- AUTHOR
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 09:47:27 GMT, January 05, 2008