Thoughtful, detailed coverage of the Mac, iPhone, and iPad, plus the TidBITS Content Network for Apple consultants.

Witch 3.5 Knows Window Switchcraft

The things I love about Mac OS X are often the very same things that I find the most frustrating. (Mac OS X is like real life in that regard.) Case in point: I can simultaneously run lots of applications, each of which has many windows open, so I can get lots of work done that involves switching among windows of different applications. Except that as soon as I've opened lots of windows, I can't find the window I want.

Oh, yes, I can find the right window eventually, but only after a certain amount of banging around. I'm just not as nimble jumping directly between desired windows as I'd like to be. Over the years, Apple has incorporated various innovations into Mac OS X designed to ease my pain in this regard (Exposé, Spaces, Exposé again), but nothing has really helped.

What I want, in order to plow through the mess that is my screen, is a list of all my open windows in all my running applications. In "Take Control of Exploring & Customizing Snow Leopard," and its predecessors, I've recommended various utilities that give me precisely that. My current favored solution is Witch, from Many Tricks (the development house of Peter Maurer, who writes a number of other indispensable utilities, including Desktop Curtain). I've recommended Witch in the past, but its most recent incarnations have given it a boost in speed and power that makes it irresistible. Witch has better keyboard navigation than ever. Witch is now Spaces-friendly, meaning that it can see windows open in spaces other than the one you're currently in. And the latest version, 3.5, even lets you display a preview of a window.

Witch is a faceless background application, with its settings accessible through a System Preferences pane. The way I use Witch is quite minimal; it has lots of features I don't take advantage of. Witch comes with a bunch of global keyboard shortcuts you can set, but I use just one of them: the shortcut that summons Witch's window. (I have this set to Shift-Control-Option-Command-W.) That window pops up over everything on the screen, and the way I have it configured, it consists of all running applications sorted alphabetically, with all their open windows.

The screenshot shows Witch's window in a typical default format. From here, I can use the mouse (including the scroll wheel) or keyboard to pick a window, and press Return to dismiss Witch and open that window. Pressing Escape chooses the Cancel option to close Witch's window. Some things to notice: The Finder's Applications window is minimized into the Dock. (I could bring it out of the Dock from here by selecting it and typing M; I can also hide and close windows from here, and even reveal a selected document or application in the Finder.) Applications without open windows are listed; I've chosen that option because I might actually want to switch to something like LaunchBar. Some open windows, such as Entourage's Progress window, are not listed; I've set Witch to hide them because I never want to switch to them. Safari's window is in a different space; yet Witch knows about it.

Witch is highly configurable as to both appearance (window colors, size, and shadows) and behavior. For example, applications (and windows) can be listed in order of recent activity, so if you're switching mostly between two applications, they top the list. You can set global keyboard shortcuts to open lists of other windows, such as just the frontmost application's windows, or all windows except those that are minimized. You can also set global keyboard shortcuts for things like zooming all minimized windows (being able to do this makes minimized windows a lot more useful). You can see a preview of a window by hovering the mouse over it, but I've turned off this feature, for the sake of speed.

Yet, as I've already said, I have opted mostly for simplicity. I use just one Witch window, the list of all windows of all applications, sorted alphabetically. I know a few of Witch's internal keyboard shortcuts, such as using arrow keys to navigate, but that's about all. Yet even this minimal, rather simple-minded use of Witch has made me a far more nimble Mac user. That should indicate just how valuable a utility this is. I still do pop up Apple's Command-Tab switcher, but that habit is now supplemented by a frequent use of Witch.

Witch 3.5 costs $19. It is a free upgrade from earlier 3.x versions, or $8 to upgrade from Witch 2. It requires Mac OS X 10.5 or later (earlier versions of Witch support earlier systems). It's a 1.8 MB download. The penalty for not registering is an occasional nag window, but the price is so reasonable that if you like and use Witch you'll surely want to register and reward Many Tricks for their continued hard work on this splendid utility.


READERS LIKE YOU! Support TidBITS by becoming a member today!
Check out the perks at <>
Special thanks to Knut Mittwollen, David Allen, David Murphy, and Kim
MacMillan for their generous support!

Comments about Witch 3.5 Knows Window Switchcraft
(Comments are closed.)

connectionfailure  2010-06-14 21:54
I've been using a poor cousin of Witch called WindowFlow- it is worth a look if you don't need all of Witch's features.
Matt Neuburg  An apple icon for a TidBITS Staffer 2010-06-15 08:41
Oooh, nice one. I'd never even heard of this. Just $7 if you only want the window switcher features. I'd need to try it before deciding how supple it is; the thing I like about Witch is that it is now so usable. It wasn't always this good; the support for Spaces has been a big hurdle...
Witch (almost) provides Windows-style alt-tab behavior: sort by "window activity order". If you think the mac's Cmd-` or Cmd-tab are the same as Windows-style alt-tab, then just stop reading now, this comment is not for you. Witch has a glitch in its alt-tab behavior, though, which made it quite annoying - if you were switching between windows in the same application, it wouldn't recognize the most recent window as the most recent window. I reported the bug but was blown off. I would have looked into fixing myself, but there was no source. Hopefully this is fixed with the new revision.