I run a triple boot setup with Windows 7, Mac OS X 10.7, and Arch Linux. Linux is my go-to OS but I get most of my paid work from Windows .NET and iOS development. As a result I’ve had to spend lots of time in every ones favorite non-unix OS. I’ve compiled a few tricks that make using Windows 7 a bit more bearable (maybe even enjoyable) for the Linux nerd.
One of the really handy things in Linux is being able to install software from a central repository with a single command on the CLI. In Windows there is now something similar: chocolatey… a command line package manager for Windows. I found this to be great for installing software that I would normally download as a zip and extract somewhere (eg: wget, console2, python), but not so much for software with installers. For example: installing git through chocolatey just downloaded the installer and ran it silently using all defaults. That may or may not be a bonus depending who you are, but I like to tweak install options sometimes.
Goodbye cmd.exe, Hello Console2
Speaking of command line interface, the default windows UI on top of cmd.exe is one of the first things that needs to go. Console2 has all sorts of great features (hint: cleartype font) but the single greatest feature for me is copy/paste keyboard shortcuts. No more messing with the right click menu.
This is one place where I found using chocolaty somewhat useful, just run:
I say somewhat because it is bundled with settings specific to someones system that causes console2 to error on startup. As a result, after installing you need to manually edit C:\Chocolatey\lib\Console220.127.116.11.20120225\bin\console.xml to remove the offending tab configs.
My text editor of choice is Sublime Text 2. On Mac and Linux sublime text comes with a handy command line shortcut: subl. In Windows I’ve created some command aliases to help satisfy my muscle memory for a few commands. Create the following files:
ls=dir $* subl="C:\Program Files\Sublime Text 2\sublime_text.exe" $* open=explorer $*
Now set the shell in console2 settings:
C:\Windows\system32\cmd.exe /K %userprofile%\cmdrc.cmd
For me one of the largest annoyances switching between OS’s is attempting to use some keyboard shortcut that doesn’t have an equivalent in the current OS. Mac OS X and Gnome Shell both have a similar feature missing in Windows 7: cycling between windows of the current app. Thankfully there is VistaSwitcher. This wonderful piece of software adds this feature and more, with current app windows switching set to <alt+~> by default.
Coming from the infinite customization possible in Linux desktop managers, I was surprised to see that Windows is still confined to a slight variation on the default look & feel. Dark UI themes make me happy so I used Universal Theme Patcher to allow installing third party themes, and then downloaded Placebo VS for Windows 7… a nice collection of dark themes.