Revision as of 13:29, 13 June 2012

WMFS (Window Manager From Scratch) is a lightweight and highly configurable tiling window manager for X. It can be configured with a configuration file, supports Xft (Freetype) fonts and is compliant with the Extended Window Manager Hints (EWMH) specifications. It is still under heavy development

The code structure of wmfs starts to become too old and is not adapted to the new ideas and concepts of the project anymore. So it has been rewritten (again from scratch). Changes and configuration is described in this wiki.

Installation

WMFS is in AUR. Due the high development rate it is recommended to use the git version, wmfs-gitAUR.

WMFS will look for a configuration file in $XDG_CONFIG_HOME/wmfs. To configure WMFS to your liking, you will need to create a configuration file; for most users this will be ~/.config/wmfs/wmfsrc. If ~/.config/wmfs does not exist, create it:

mkdir -p ~/.config/wmfs

A default file is located in your XDG directory, normally in /etc/xdg/wmfs, called wmfsrc. Copy it to your newly created .config/wmfs folder and you can begin to modify it.

cp /etc/xdg/wmfs/wmfsrc ~/.config/wmfs

To use wmfs as a window manager, add it to your .xinitrc:

echo "exec wmfs" >> ~/.xinitrc

Configuration

Configuration file

By default two different mod keys are used for keybindings (Template:Keypress and Template:Keypress) which may conflict with your existing set-up. These can be changed in wmfsrc. For example, if you want to use the Win-key instead of Alt, replace "Alt" with "Super" or "Mod4" in the configuration file, e.g:

Key Bindings

The [keys] section of wmfsrc allows you to customize your keybindings. As described above, this could mean just changing the default modifier from Template:Keypress to Template:Keypress.

By default, WMFS is set up to cycle through the 9 available layouts. You might, for example, wish to include a keybind to set a specific layout, say tile_right (the classic tiled mode). You could bind that function to Template:Keypress+Template:Keypress like so:

Statusbar configuration

The text shown in the status bars (or infobars) is set on a running wmfs instance using the "wmfs -s" command. You can set a different bar for each screen. The bars can also be positioned at the top or bottom of each tag in the configuration file. For example

The format is \b[xx;yy;ww;hh;#cccccc]\ where xx and yy are absolute (not relative) x and y positions, ww and hh are width and height, and cccccc is a color. This feature could be used to create CPU barcharts, volume displays and the like. Note: the absolute positioning makes it difficult to accurately interleave text and graphics.

Images may be added like this:

wmfs -s "there is sexy image at x;y on this statusbar \i[x;y;height;width;/home/you/img/sexyimg.ext]\ "

(Default image height and width can be set with height = 0 and width = 0 in the sequence.)

Conky

WMFS Status Toolkit

Usage

The keybinding Template:Keypress+Template:Keypress starts a launcher in the titlebar (similar to dmenu). It supports tab-completion and command-line parameters. Multiple presses of the tab key iterate through possible completions.