Word on the street is that those little hacky but oh-so-useful tidbits known as InputManagers do not work in the upcoming Mac OS X 10.6 (“Snow Leopard”). Apple has been threatening to remove support for these since Mac OS X 10.5 was announced so it’s no surprise that this day may have finally come.
Unfortunately, if this is true it means the death of a lot of really useful add-ons, such as Ecamm’s iSight plugin iGlasses, hetima’s insanely useful Safari enhancement SafariStand, and Mike Solomon’s application patching mechanism SIMBL (which in itself allows developers to “hijack” applications to add more functionality as a kind of hack-enabler).
A SIMBL plugin I use all the time is Visor, developed by Nicholas Jitkoff. Visor patches Apple’s Terminal to make it available system-wide via a hotkey (ala Quake’s console window). With Visor, you hit a pre-determined keyboard shortcut and voila, a Terminal window slides into view.
I use the shit out of this all the time, and if Mac OS X 10.6 truly does kill InputManager support my muscle memory will be downright achy-breaky. So I set out to roughly duplicate this functionality using a method that should continue to work in future OS updates.
Luckily, Applescript seems to be a usable solution, albeit just slightly less responsive than Visor was (and without the slick “slide out” effect). That said, this script still works well enough for my purposes and may fit your workflow as well.
- Download the disk image from the link above and mount it.
- Move the resulting Open Terminal Window.scpt file into your home library’s Scripts folder (/Users/username/Library/Scripts/). There’s a shortcut in the disk image that should work.
- Now we need some freeware assistance to assign a keyboard shortcut to run the script. Download Red Sweater’s free Fastscripts Lite application (direct download link), mount the disk image, and copy the FastScripts Lite application into your applications folder.
- Launch the FastScripts Lite application. It’ll appear in your menu bar (the icon looks like a scroll). Click on the FastScripts Lite icon and select Preferences from the FastScripts Lite submenu:
- Select the Script Shortcuts tab and double-click the (None) text beside the Open Terminal Window.scpt item. Now you can set a quick key that will run this script. I use control+option+command+0 (zero).
- That’s it! Now you can close the FastScripts Lite window and try out your quick key. Assuming you didn’t choose one that conflicts with an existing system-wide keyboard short cut you should see the Terminal application launch and a new window activate. You also will probably want to add FastScripts Lite to your startup items so it launches when you log in.
This script should be smart enough to detect if there is a Terminal window currently open and will reuse it if the window isn’t busy doing something (running top, viewing a man page, etc.). If the current window is busy, the script will open a new tab.
I haven’t tested this that much but it works perfectly for me. Leave feedback in the comments if you run into issues, or if it’s working for you.