Toward a mouseless work environment
Friday November 10, 2006 by Derek Young
I took some time the other day to look at tools and tips for reducing your use of the mouse, both for speed and ergonomic benefit.
Mouseless Firefox
At the very minimum, using existing key bindings where possible allows you to do some limited navigation without the mouse. One tip: Ctrl-L brings you to the address bar, then Ctrl-Enter completes a .com name. Ctrl-L “flickr” Ctrl-Enter brings you to www.flickr.com.
Navigating to links with the keyboard can be frustrating. The Hit-a-Hint extension allows you to jump to links by number. Holding down the magic key (space bar by default) brings up tiny numbers on the links of the page. Typing in the number is then equivalent to clicking the link. This has worked well for me. The numbers aren’t in the way until you need them, and typing in the number is faster than reaching over for the mouse.
Conkeror is a completely mouseless UI to firefox. Commands are similar to emacs key binding (for example C-x C-f brings you to the address bar, like finding a file). All commands can also be accessed with M-x. Links are accessed by number, similar to Hit-a-Hint. I haven’t tried this one yet since it only works with Firefox 1.5 (and Ubuntu Edgy offers 2.0 only). Sounds like a great idea though for most browsing.
Mouseless window manager
I’ve seen some mouseless window managers before (ratpoison and ion) but both seemed too intimidating to try. This week I encountered wmii. It builds upon the ideas of ion, ratpoison with some nice advantages.
With wmii, all windows placement is controlled by the window manager. Windows are arranged in columns and take up 100% of the space on your desktop without overlapping. You can move a window from one column to the next or up and down in a column and any column can be resized. Moving windows or the window focus is all done through keybindings. Windows can also exist in a floating layer above the others (like a standard window manager), but this only happens if a window forces its size or position (usually popups and splashscreens).
wmii deals with having lots of windows open by allowing you to tag windows with either a numerical tag or a string. Keybindings allow you to quickly jump between sets of tagged windows (like a workspace in other window managers). Windows can also have multiple tags.
Unlike gnome or KDE, wmii has almost no eye candy. There’s a thin bar along the bottom of the screen, very similar to the Emacs modeline. This bar can display little text status widgets (like the date, time, load average), and can guide you through menus for various actions. If you want to launch a program, you hit MODKEY-p and a list of all programs in your path show up in the status bar. As you start typing the list is reduced until you hit enter to launch your selection.
The real beauty of wmii is that you can control everything about it through shell scripts. ruby-wmii by Mauricio Fernandez is a rewrite of the scripts shipped with wmii in Ruby. These allow you to write small plug-ins in pure Ruby to tag windows and add functionality to the status bar. There are plug-ins available to control music players, show status load, etc.
I’ve been using wmii for a couple days now and I’m starting to get better at doing all window operations with the keyboard. (The problem of course is that eventually you navigate to a window that is difficult to navigate with the keyboard.)

Mirroring Ubuntu (Edgy) What I would do with the open-sourced JVM

Hey, conkeror should work with Firefox 2 now. You should give it a spin. If you have trouble you can always grab Swiftfox 1.5 (http://getswiftfox.com) and keep both versions around.
— Phil Feb 6, 11:40 AM #