areawm
Idea
My history of usage of desktop environments and window managers started under a $NOTFROMREDMOND-OS with:
- KDE - which felt bloated after some time. So I switched to
- $SMALL_AND_FAST_WM. After some time the wasting of workspace made me switch to
- $SMALL_AND_FAST_TILING_WM. As time goes by the handling of some things (which are better on a floating desktop like gimp) also did't seem to be the solution (for me).
Now programs start floating and can be sent to defined areas. Programs already using an area can be focused with a keybinding. Swapping windows with windows in areas is also possible.
openbox, wmctrl (patched), xbindkeys und a few scripts do this for me.
areawm is no Windowmanager, but a script which enhance a given window manager.
Areas
The desktop is divided into so called areas. These areas have defined positions and sizes.
- to send windows to area use the option -t. Command:
areactrl -t <area> - to focus window in a area use the option -f. Command:
areactrl -f <area> - to swap windows with a window in a area use -w. Command:
areactrl -w <area>
xbindkeys or another tool is used for keybindings to invoke the scripts.
~/.xbindkeysrc example:
"[$PATH]/areactrl -f 1" Control + 1 "[$PATH]/areactrl -f 2" Control + 2 "[$PATH]/areactrl -f 3" Control + 3 "[$PATH]/areactrl -f 4" Control + 4 "[$PATH]/areactrl -f 5" Control + 5 "[$PATH]/areactrl -f 6" Control + 6 "[$PATH]/areactrl -f 7" Control + 7 "[$PATH]/areactrl -t 1" Control+Shift + 1 "[$PATH]/areactrl -t 2" Control+Shift + 2 "[$PATH]/areactrl -t 3" Control+Shift + 3 "[$PATH]/areactrl -t 4" Control+Shift + 4 "[$PATH]/areactrl -t 5" Control+Shift + 5 "[$PATH]/areactrl -t 6" Control+Shift + 6 "[$PATH]/areactrl -t 7" Control+Shift + 7 "[$PATH]/areactrl -w 1" Mod4+Control + 1 "[$PATH]/areactrl -w 2" Mod4+Control + 2 "[$PATH]/areactrl -w 3" Mod4+Control + 3 "[$PATH]/areactrl -w 4" Mod4+Control + 4 "[$PATH]/areactrl -w 5" Mod4+Control + 5 "[$PATH]/areactrl -w 6" Mod4+Control + 6 "[$PATH]/areactrl -w 7" Mod4+Control + 7
Areas will defined in ~/.areasrc like this (notice the space at the beginning of each line):
<x> <y> <width> <height>
Example ~/.areasrc with 6 areas:
0 740 594 310 596 740 582 310 1181 740 354 260 0 0 1050 736 1056 0 624 370 1056 370 624 360
Hint: a easy way to define areas is to place x-terminals and start areactrl -c or check output from wmctrl -l -G (resizehints)
Screenshots
pure
with areas
more screenshots (some with configs).
Video
Problems
Todo
- enable cycle through windows in given area (maybe areas with tabbing can be realized with pekwm after this enhancement. With pekwm and fluxbox it is possible to cycle through windows (same position and size) with Mod4+Up/Down/Left/Right
- implement special-areas
similar Ideas
Feedback
Send feedback, improvements and critics to deifl@deifl-web.de.
Screenshots and Configs
… can be found on the User Configs page.
Files
- Ralfs patched version of wmctrl: wmctrl-1.07-patched.tar.gz needed
- most recent Version: hg-tip
- all together: areawm-scripts-0.2.tar.gz
Old versions:
- areawm-scripts with KDE and desktop support from Ralf: areawm-scripts-0.1-alpha_kde_multiple-desktop.tgz (included since 0.1.1-alpha)
Mercurial:
- click here or use:
hg clone http://deifl.modprobe.de/hg areawm
related
a big thanks goes to
a few Ideas from others...
which seems to be lazy to comment here
- send windows to next/previous area [from Grauwolf]
- group the areafiles for workspaces (
~/.areasrc/0) together [from Grauwolf]
misc.
To stay informed about changes there is a areawm RSS-Feed availible.




Diskussion
Hi Jochen,
Your wmctrl patch is a must and should be integrated upstream (if wmctrl is not a dead project
). If you don't mind I will submit a wish bug to make it available in Debian.
There is a small typo in the command line help:
- -r <WIN> -s Show the windows Decorations\n
+ -r <WIN> -z Show the windows Decorations\n
Regards,
Jerome
Hi Jerome,
the typo in wmctrl.patch is fixed (thanks for the hint).
It would be nice to see the patch in upstream, but my english is not the best (as you can see
), so I gladly accept your offer about submitting a wish bug
P.S. I didn't write the wmctrl-patch. It's Ralfs work.