Archive for the ‘wmii’ Category

ruby-wmii

Thursday, November 16th, 2006

After much farking around with startxwin.bat, rebaseall, wmiirc (the ruby version), and the ruby configuration file, I’ve finally managed to get wmii up and running on cygwin.

Pure wmii doesn’t really work on Cygwin. It seems like there is some buffering on file sockets which means e.g. that Mod-p won’t kick in until I’ve switched buffers a few times. So I decided to go for ruby-wmii, which is nicely scriptable in Ruby, and has a faster implementation of IXP (which I’m not quite sure what is, but has something to with filesockets).

I’m really looking forward to trying this out in a serious way.

wmii built, doesn’t start

Monday, November 13th, 2006

I was finally able to build wmii. Turns out that Cygwin doesn’t like to link to X11 before linking to the wmii libs.

So I changed the Makefile in cmd and cmd/wm to read:


LDFLAGS = -L../liblitz -llitz -L../libixp -lixp -L../libcext -lcext
LDFLAGS += ${LIBS}

instead of

LDFLAGS += -L../liblitz -llitz -L../libixp -lixp -L../libcext -lcext

This worked like a charm. Unfortunately I am unable to start the bloody thing but I think I’ve found out why. DISPLAY is set to 127.0.0.1:0.0 in startx and/or startxwin, and the wmii script tries to create a folder in tmp that has this in it’s name. That works on most unixen, but not cygwin, due to the colon, which is probably illegal on windows. So I’ll have to replace that colon somehow.

update:

I modified the wmii file to


#!/bin/sh
# start wmiiwm and wait for its termination

wmiiwm -c || exit 1

OLD_PATH=$PATH export OLD_PATH
PATH=$HOME/.wmii-3:CONFPREFIX/wmii-3:$PATH export PATH
BLE=`echo /tmp/ns.$USER.${DISPLAY%.0} | sed 's|:|_|'`
WMII_ADDRESS=unix!$BLE/wmii export WMII_ADDRESS

mkdir -m 700 $BLE 2>/dev/null
wmiiwm -a $WMII_ADDRESS &
wmiiwmpid=$!
mkdir "$HOME/.wmii-3" 2>/dev/null && welcome &
wmiirc &
wait $wmiiwmpid

This quotes the home directory, which is good, since I stupidly still have Home = “Documents and Settings\Nonni”. This also replaces any colons in the socket file with an underscore, using sed.

Consolidation + wmii

Sunday, November 12th, 2006

What I want out of emacs, in concrete terms, is slowly consolidating. I had a look at the cedet package (Semantic et al), and after getting Cygwin to make for me, I installed it, as well as ECB. I’m very pleased with ECB+Semantic so far. It understands Python well enough, and it seems to have a nice parser error recovery. Semantic can also be given a sense of projects, which to me is essential. It only looks at directories though, but I don’t really think that’s a problem.

Emacs is slowly but surely changing into a more productive tool for me. I’ve started using ido-mode, which is incredibly nice. It’s a completion type of thing for files in the minibuffer, it’s easy enough to try out as it’s built in, just do M-x ido-mode.

One thing I’ve been thinking about is that C-x b should not only look at buffers in memory, but also files on disk, as long as those files are part of some kind of a project. I haven’t found the right thing yet, and this may very well end up being my first elisp hack.

I’ve looked in undo-browse.el, and liking that, though the colour highlighting is a bit weird. I’d find it more natural to color code the changes in some kind of a blue-red spectrum according to age, and I suppose that should be easy enough to hack.

Emacs cut and paste scheme, unfortunately, is not growing on me. I’m not quite sure why I shouldn’t just start using CUA-mode. Apparently yanking is all the rage, but I find it quite fickle. I’ll give it a bit more time. I’m also trying to use C-b and friends to navigate, when I do remember it’s quite satisfying, but usually when I start thinking about navigating, my fingers are already at the arrows. I guess I should also start doing backspace with C-something, as that would be quite Emacsee. Maybe C-j, even though that, in my mind means join line.

Also I need to think about whether I want to rebind something to goto-line. I suppose M-g g is okay though.

One thing I miss is going back and forth through edit points. There is an el file somewhere that lets you go back and forth through editing points in a single file, but I want to to jump around files with abandon! Anyway I’m sure it’s out there somewhere, and if not I guess I’ll have to hack it.

Also, the Emacs Wiki rules, very helpful.

Apart from Emacs, I have been setting up Cygwin, and have also been trying to set up wmii through Cygwin. Unfortunately the makefiles are doing something wrong, so that it can’t link against libX11.dll.a (Cygwin’s version of libX11.a). I’ll have to experiment a bit, and then present my findings to the wmii people.

Anyway, enough for now. Sorry for rambling, I’ll hopefully start to blog in more coherent way with practice.