wmii
Wmii setup
Yep, i started using wmii, insane me. I usually have 6 workspaces, and I'm still using "alt" as my default modifier, which is a real PITA.
Workspaces
Here are my 6 workspaces:
/XMMS.*/ -> ~ /Gimp.*/ -> ~ /MPlayer.*/ -> ~ /Thunder.*/ -> 1 /Firefox.*/ -> 2 /XChat.*/ -> 3 /irssi/ -> 3 /.*[Tt]erm.*/ -> 4 /Quodlibet.*/ -> 5 /Workrave.*/ -> 6 /.*/ -> 1
Yes, only a wmii geek can understand that.
Favorite applications
I am still using thunderbird for my mail, firefox for the web, but I have started using irssi instead of xchat, i don't remember why… Since I'm using more terminals than before, i have also /blog/2007-05-30-la-resolution-et-les-laptops.
I have therefore set cool symlinks to have all those lovely things in my menu:
$ ls -l .wmii-3 lrwxrwxrwx 1 anarcat anarcat 16 2006-07-21 06:09 firefox -> /usr/bin/firefox -rwxr-xr-x 1 anarcat anarcat 64 2006-07-21 06:12 irssi lrwxrwxrwx 1 anarcat anarcat 18 2006-07-21 06:27 quodlibet -> /usr/bin/quodlibet lrwxrwxrwx 1 anarcat anarcat 20 2006-07-21 06:09 thunderbird -> /usr/bin/thunderbird -rwxr-xr-x 1 anarcat anarcat 4366 2006-07-21 13:33 wmiirc
Note how irssi is actually not a symlink but a simple shell script:
exec x-terminal-emulator -T irssi -e /usr/bin/irssi
Parenthesis: rxvt setup
This mostly sets up transparency and reverse video.
Rxvt.reverseVideo: true URxvt.inheritPixmap: true URxvt.tint: true URxvt.shading: 90 URxvt.tintColor: grey URxvt*reverseVideo: true URxvt*saveLines: 10000 URxvt*externalBorder: 0 URxvt*internalBorder: 0 URxvt*scrollBar: False URxvt*termName: rxvt
Startup programs
# MISC #xsetroot -solid '#333333' killall chbg; chbg -R -randomize $HOME/Photos & killall xautolock; xautolock & killall conky; conky & workrave & status &
So that's http://chbg.sourceforge.net/, http://freshmeat.net/projects/xautolock/, http://conky.sourceforge.net/ and http://workrave.org/.
Keybindings
$MODKEY-F2) PATH="$OLD_PATH" x-terminal-emulator -e '/home/anarcat/bin/ssh-stub' &;; $MODKEY-F3) PATH="$OLD_PATH" x-terminal-emulator &;; $MODKEY-F4) PATH="$OLD_PATH" x-terminal-emulator -e su &;;
I use the same keybindings as in my sawfish setup, in general…
Complete configuration file
#!/bin/sh # configure wmii xwrite() { file="$1"; shift echo -n "$@" | wmiir write "$file" } proglist() { ls -lL "$@" 2>/dev/null | awk 'NF>2 && $1 ~ /^[^d].*x/ {print $NF}' | sort -u } setxkbmap -layout ca,us -option -option 'grp:sclk_toggle' MODKEY=Mod1 UP=j DOWN=k LEFT=h RIGHT=l WMII_FONT='fixed' #WMII_FONT='-*-courier-*-r-*-*-12-*-*-*-*-*-iso10646-*' WMII_SELCOLORS='#ffffff #285577 #4c7899' WMII_NORMCOLORS='#222222 #eeeeee #666666' # dark background #WMII_NORMCOLORS='#e0e0e0 #0a0a0a #202020' export WMII_FONT WMII_NORMCOLORS WMII_SELCOLORS # give wmiiwm a chance to start while : do echo Start wmiirc | wmiir write /event >/dev/null 2>&1 && break sleep 1 done # WM CONFIGURATION xwrite /def/border 1 xwrite /def/font $WMII_FONT xwrite /def/selcolors $WMII_SELCOLORS xwrite /def/normcolors $WMII_NORMCOLORS xwrite /def/colmode default xwrite /def/colwidth 0 # TAGGING RULES wmiir write /def/rules <<EOF /XMMS.*/ -> ~ /Gimp.*/ -> ~ /MPlayer.*/ -> ~ /Thunder.*/ -> 1 /Firefox.*/ -> 2 /XChat.*/ -> 3 /irssi/ -> 3 /.*[Tt]erm.*/ -> 4 /Quodlibet.*/ -> 5 /Workrave.*/ -> 6 /.*/ -> 1 EOF # MISC #xsetroot -solid '#333333' killall chbg; chbg -R -randomize $HOME/Photos & killall xautolock; xautolock & killall conky; conky & workrave & status & PROGS_FILE=`mktemp /tmp/.wmiimenu.proglist.XXXXXX` || exit 2 proglist `echo "$OLD_PATH" | tr : ' '` >$PROGS_FILE & # SHORTCUTS #xwrite /def/grabmod $MODKEY wmiir write /def/keys <<EOF $MODKEY-$LEFT $MODKEY-$RIGHT $MODKEY-$DOWN $MODKEY-$UP $MODKEY-space $MODKEY-d $MODKEY-f $MODKEY-s $MODKEY-m $MODKEY-a $MODKEY-p $MODKEY-t $MODKEY-0 $MODKEY-1 $MODKEY-2 $MODKEY-3 $MODKEY-4 $MODKEY-5 $MODKEY-6 $MODKEY-7 $MODKEY-8 $MODKEY-9 $MODKEY-F1 $MODKEY-F2 $MODKEY-F3 $MODKEY-F4 $MODKEY-F5 $MODKEY-F6 $MODKEY-F7 $MODKEY-F8 $MODKEY-Return $MODKEY-Shift-$LEFT $MODKEY-Shift-$RIGHT $MODKEY-Shift-$UP $MODKEY-Shift-$DOWN $MODKEY-Tab $MODKEY-Shift-Tab $MODKEY-Shift-space $MODKEY-Shift-c $MODKEY-Shift-t $MODKEY-Shift-0 $MODKEY-Shift-1 $MODKEY-Shift-2 $MODKEY-Shift-3 $MODKEY-Shift-4 $MODKEY-Shift-5 $MODKEY-Shift-6 $MODKEY-Shift-7 $MODKEY-Shift-8 $MODKEY-Shift-9 $MODKEY-Control-$LEFT $MODKEY-Control-$RIGHT $MODKEY-Control-$DOWN $MODKEY-Control-$UP EOF # EVENT LOOP wmiir read /event 2>/dev/null | while read event do set -f set -- $event set +f type="$1"; shift case "$type" in Start) if test wmiirc = "$1" then rm -f $PROGS_FILE exit fi;; BarClick) xwrite /ctl view "$1";; Key) case "$1" in $MODKEY-$LEFT) xwrite /view/ctl select prev;; $MODKEY-$RIGHT) xwrite /view/ctl select next;; $MODKEY-Tab) xwrite /view/sel/ctl select next;; $MODKEY-Shift-Tab) xwrite /view/sel/ctl select prev;; $MODKEY-space) xwrite /view/ctl select toggle;; $MODKEY-d) xwrite /view/sel/mode default;; $MODKEY-s) xwrite /view/sel/mode stack;; $MODKEY-m) xwrite /view/sel/mode max;; $MODKEY-f) xwrite /view/0/sel/geom 0 0 east south;; $MODKEY-a) `proglist $HOME/.wmii-3 /etc/X11/wmii-3 | wmiimenu` &;; $MODKEY-p) PATH="$OLD_PATH" wmiisetsid `wmiimenu <$PROGS_FILE` &;; $MODKEY-t) xwrite /ctl view "`wmiir read /tags | wmiimenu`" &;; $MODKEY-F2) PATH="$OLD_PATH" x-terminal-emulator -e '/home/anarcat/bin/ssh-stub' &;; $MODKEY-F3) PATH="$OLD_PATH" x-terminal-emulator &;; $MODKEY-F4) PATH="$OLD_PATH" x-terminal-emulator -e su &;; $MODKEY-F5) xmms --rew &;; $MODKEY-F6) xmms --stop &;; $MODKEY-F7) xmms --play-pause &;; $MODKEY-F8) xmms --fwd &;; $MODKEY-[0-9]) xwrite /ctl view `echo $1 | sed 's/.*-//'`;; $MODKEY-Shift-$LEFT) xwrite /view/sel/sel/ctl sendto prev;; $MODKEY-Shift-$RIGHT) xwrite /view/sel/sel/ctl sendto next;; $MODKEY-Shift-$DOWN) xwrite /view/sel/sel/ctl swap down;; $MODKEY-Shift-$UP) xwrite /view/sel/sel/ctl swap up;; $MODKEY-Shift-space) xwrite /view/sel/sel/ctl sendto toggle;; $MODKEY-Shift-c) xwrite /view/sel/sel/ctl kill;; $MODKEY-Shift-t) xwrite /view/sel/sel/tags "`wmiir read /tags | wmiimenu`" &;; $MODKEY-Shift-[0-9]) xwrite /view/sel/sel/tags `echo $1 | sed 's/.*-//'`;; $MODKEY-Control-$LEFT) xwrite /view/sel/sel/ctl swap prev;; $MODKEY-Control-$RIGHT) xwrite /view/sel/sel/ctl swap next;; $MODKEY-Control-$DOWN) xwrite /view/sel/sel/ctl swap down;; $MODKEY-Control-$UP) xwrite /view/sel/sel/ctl swap up;; esac;; esac done &