Fri, 11 Mar 2011

Back-button Addiction

Can I haz therapy?

After three years of using an Evoluent VerticalMouse 3, I’m in touch with my Logitech TrackMan Wheel again. Despite how much I like the VerticalMouse I neglected to be vigilant while developing my muscle memory for it. Unfortunately I’ve trained myself to bend my hand in an awkward angle while holding it, which hurt the nerve in the carpal tunnel. Quite the opposite of what you want from an ergonomic mouse. Of course changing a three year old habit over night becomes rather difficult, so, for the good of my carpal tunnel, I reverted back to my old and trusty trackball. Let me reiterate, that this is not a problem of the VerticalMouse, but my oversight while training my muscle memory using it.

2001: A Backbutton Odyssey

The real downside is, that the TrackMan Wheel only has 3 buttons (counting the mouse-wheel’s button functionality), which means an utter lack of a back-button for browsing. And that reminds me of my attitude towards the scroll-wheel, when it was new:

What good is a scroll wheel? I've got a scrollbar at the side of the window anyway!

First I dismissed it as completely superfluous, then I started to use it, and after a while I couldn’t live without it.

That meant: finding a way to map the middle mouse button to the functionality of a back-button. Because Windows 7 doesn’t provide that functionality out of the box I had to look for a third party solution. (Let me add that I never actually used the scroll wheel as a button, because they are either hard/uncomfortable to press to prevent inadvertent clicking while scrolling or vice versa)

Logitech SetPoint

First I tried Logitech’s MouseWare (I’m a little bit out of date, sorry) SetPoint and it does precisely what I want. Which shouldn’t come as a surprise. Unfortunately only on a single desktop. And because I use Sysinternal’s Desktops and SetPoint doesn’t allow to run multiple instances it was no solution to my problem.

Microsoft IntelliPoint

Next I tried Microsoft’s IntelliPoint 8.1, which, of course, refused to work with an input device by Logitech. Oh the joy of USB and device IDs. PS/2 doesn’t have that feature, so I used an USB->PS/2 adapter to connect the trackball and installed IntelliPoint 7, which still supports PS/2. Now IntelliPoint let me configure the trackball and map the middle mouse button to work as back-button. It worked flawlessly and across all desktops. However, using the trackball via PS/2 in games was inaccurate and jumpy. No smooth pixel accurate aiming, so sniping was out of the question. Again, a show-stopper.


Lastly I tried AutoHotkey (while the TrackMan Wheel was connected via USB, of course). The script contained nothing more than MButton::Backspace and it worked as expected. But just like SetPoint, it only works on a single desktop. However, unlike SetPoint, AutoHotkey can be run multiple times. Having to start it once on every desktop is a nuisance, but an acceptable one. Reason enough for me to come up with a tool for controlling Desktops from the command line: DesktopsUtil. Using DesktopsUtil with the following batch file executes AutoHotkey on every desktop.

DesktopsUtil.exe e1 AutoHotkey.exe
DesktopsUtil.exe e2 AutoHotkey.exe
DesktopsUtil.exe e3 AutoHotkey.exe
DesktopsUtil.exe e4 AutoHotkey.exe

The nice thing about the solution with AutoHotkey is, that it sends an actual Backspace-keystroke. So holding the Shift-key while pressing the middle mouse button automatically becomes a forward-button. Convenient!

Enable Javascript to see comments