====== 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)