Skip to content

johnmeacham/whaw

Repository files navigation

whaw - window manager independent window layout tool

whaw is a program for X11 that can use advanced tiling algorithms and an intuitive user interface to quickly lay out windows without having to replace or modify the set up of your window manager of choice. whaw is meant to augment the capabilities of your current window manager with basic tiling operations.

using whaw

whaw responds to the mouse moving into one of its control corners in order to not waste screen space yet always be accessible. A window placement operation consists of three steps.

  • choosing a layout algorithm

    Choosing the layout algorithm is combined with activating whaw. In order to activate whaw, move the cursor into one of its activation corners, the upper-left corner of the screen by default. You will see the cursor change to a cross to let you know whaw has been activated. The two layout algorithms are horizontal and vertical. to choose horizontal layout, move the mouse cursor away from the corner horizontally, to choose vertical layout, move the cursor away vertically. the cursor will change into a horizontal or vertical arrow to indicate your choice. you can always change the layout algorithm by going back into the corner. any whaw operation can be canceled at any point by pressing the middle mouse button. The corner that activates whaw can be controlled with the --corner option.

    In one-shot mode you can also pass the --htile or --vtile options on the command line to force whaw to perform a single layout in the given direction and then exit.

  • choosing the windows to move/resize

    Use the mouse to left click on each window you want to add to your layout group. as you click on each window, it should be moved off screen to let you select windows underneath it. If you hold down shift while clicking on a window, it will grow to take up two slots instead of one if you don't want to evenly space things.

  • choosing where to place the windows

    To have the windows tiled across a given screen, press the right mouse button on that screen. to have them placed in a specific area with a specific size, use the left mouse button to drag out a box. the windows will be placed inside this box.

  • virtual screens

    To avoid spanning windows accross multiple monitors, whaw will examine the monitor configuration and only tile accross the single monitor on a right click. You can also force whaw to treat a single monitor as if it were two via the --virtual option. This is useful if you have a very large monitor and don't want to maximize a window completely via whaw.

caveats

Some window managers fight whaw, although most can be made to work. let me know if you are experiencing trouble with any particular window manager and what type of thing you are seeing. the most common issues involve focus or window stacking order not being set properly, there are many techniques to fix these sort of issues specified by X11, ICCCM and freedesktop, sometimes it takes some care in finding the combination that works properly for a given manager. Other window managers with their own tiling algorithms (such as ion and ratpoison) cannot work with whaw at all since their own algorithms take precedence.

testing

Whaw has been tested with the following systems: metacity (the default fedora and gnome window manager), twm (the X11 classic), fluxbox and no window manager at all. whaw should degrade gracefully by modifying its algorithms from using a EWMH complaint window manager, to a ICCCM compliant one, all the way to a nonexistent one.

author

Whaw was written by John Meacham who can be contacted at http://notanumber.net

getting it