====== Windows Manager Improved II (wmii) ====== I've been experimenting with using [[http://wmii.suckless.org/|wmii]] as my window manager in Ubuntu Karmic, without discarding all of the Gnome desktop features. * http://glyph.twistedmatrix.com/2009/01/you-got-your-windowmaker-in-my-peanut.html ===== Creating ~/.wmii preferences ===== # Boiler plate for Python support mkdir ~/.wmii cd ~/.wmii ln -s /etc/X11/wmii/python/pygmi pygmi ln -s /etc/X11/wmii/python/pyxp pyxp # Probably want to modify wmiirc.py (only clean way to alter the colours) cp /etc/X11/wmii/python/wmiirc.py wmiirc.py cp /etc/X11/wmii/python/wmiirc wmiirc ===== Q: Why don't new window appear in the current view? ==== A: Because they don't match the current tag. I wrote a script to tag all new windows with the current view. ''~/.wmii/wmiirc_local.py'' (requires Python support libraries, see above) #!/usr/bin/env python import wmiirc def debug(*args, **kwargs): print args, kwargs def tag_client_with_current_view(event, client): wmiirc.Client(client).tags = "sel" any = wmiirc.Match(wmiirc._) # Wildcard wmiirc.events.bind({ #any: debug, wmiirc.Match("CreateClient"): tag_client_with_current_view, }) Stand-alone script, does not require any special libraries (but isn't started automatically) #!/usr/bin/env python import os import sys p = os.popen("wmiir read /event") while True: event = p.readline() if event.startswith("CreateClient"): client = event.split(" ", 1)[1].strip() os.system("wmiir xwrite /client/%s/tags $(wmiir read /tag/sel/ctl | head -n1)" % client)