There was a discussion a while ago about 9term etc. Following this, I compiled 9term and got frustrated with it not being quite right. Eventually, i realised that it was because I wanted 9term to be wily; therefore I decided that I should use wily instead. So, for a few weeks now, I have been using wily _instead_ of xterm and 9term. It took a bit of thinking about, and editing some bits of wily (mainly win actually) but I'm now happy using wily as a terminal. I do prefer this way over xterm and friends. Some of my thoughts are below, I have attached some bits of source if anyone is interested. Both files need linking to libmsg. ian It is necessary for the shell to expect the terminal to be raw (that is, there cannot be any filename completion, cursor keys etc). So, rc must be made without linking to any readline library. win: the shortcoming of win was that when you changed directory, the title of the win window did not changed. Therefore, when you clicked on a file in the current directory, wily did not find it. This is fixed by a change in win to export a variable containing the id of the win window, to make it easy for another program (setname) to change the title each time the directory changed. (Actually, i was a bit lazy here and I call cwd() from the rc fn prompt()). fn prompt { if (~ $cputype linux*) { if ( ~ $TERM win) { setname } } } Clearly, it is vital to have many terminal wilys running simultaneously. So $WILYFIFO is set to different values by a script #!/bin/rc WILYFIFO=/tmp/wily-$pid wily $* rm -rf /tmp/wily-$pid Wily acts as a terminal most naturally if there is one column: exec xwily -c 1 $*. But often, I expand to two columns later. More generally, but mostly with terminals, browsing directories happens a lot, so I finally got round to writing the code to open a directory in the current window: that is, B2 on a directory does like B3 does, but the new directory opens into the current wily window. And .. appears in the title of all directory windows. for man pages: set the variable PAGER='col -bx' Still to do: 'ls' really messes up the formatting. I suspect that setting the tabsize and using a fixed font would help. Perhaps ls would be better being mapped using a rc function to a b3 and do a Get on . ?