Notes To A Future Self: Getting Productive On WinXP
Windows XP is truly a horrid desktop OS, particularly if you're a programmer. The default install contains roughly nothing useful, and even getting a development environment going requires grabbing the likes of cygwin, Visual Studio, and a zillion patches from Microsoft.
The truly dispiriting thing, though, is how badly cmd.exe still sucks. I fully admit that my personal programming proclivities are not normal, but to be reasonably productive I need a Unix-like shell, a terminal that works (can be resized, has reasonable VT100 emulation, etc.), and the ability to fix the "Caps Lock" key to do the right thing – namely, have it fire the "Ctrl" key instead. This is all relatively straightforward to do on Linux and OS X. Here's how I got it done with Windows:
Do the MSFT Patch Dance
Make coffee?
Install Cygwin
We've all done it a thousand times. This'll make 1001. It's kind of comforting that the Cygwin home page hasn't changed perceptibly in nearly a decade.
Get SharpKeys
Instead of fugly registry hacks, SharpKeys allows you to map the dreaded and useless "Caps Lock" key to something actually useful. If your key-mapping preferences swing some other way, SharpKeys can likely handle that too. Not sure why it's not built into Windows, frankly.
Set Up Puttycyg
Having cygwin is nice, but having a terrible shell with Cygwin? Not so nice. Enter Puttycyg, a small hack on the venerable Putty SSH client for windows that provides an option to launch a local Cygwin session in lieu of connecting to another system.
Once I extracted it and ensured the Puttycyg directory was in my windows PATH, I created a desktop shortcut to the putty.exe
included in the distribution and configured the shortcut (right-click) to read:
"C:\Documents and Settings\slightlyoff\Desktop\puttycyg\putty.exe" -cygterm -
And then set the "Shortcut key:" to be:
Ctrl + Alt + T
Now, whenever I want a fully functional shell from my desktop, I just hit that key combination and it All Works (TM).