The move from Mac OS 9 to Mac OS X brought about a big change in terms of switching between programs: clicking on one window of a program no longer brought all of that program’s windows to the front. This took the Mac OS a little closer to the traditional MS Windows model of program switching rather than the traditional Macintosh implementation — the difference in switching model can be summarised as window-based in Windows (appropriately) and application-based on Mac OS 9.
Interestingly, at around the same time as the OS X change, Microsoft also made a small move away from their traditional model in Windows XP. In XP, when the task bar becomes full, windows belonging to the same program become grouped together and are represented by only one tab in the task bar — in much the same way as the application-centric OS X Dock, but conditional upon available space.
However, OS X didn’t lose all of OS 9’s application-based heritage. Clicking on a program’s Dock icon still brings all of its windows to the front, as does command-tabbing to a different program. Then, of course, there’s Exposé and a host of keyboard modifiers for each method that just make the whole operation really slick. I think part of that slickness stems from the combination of app-centric and window-centric switching… Anyhow, for reasons I’ll explain at the end, I thought I’d just run through some hints and tips for switching between programs and windows on Mac OS X (which are especially recommended for newcomers to the platform):
The Dock (application-centric)
The Dock is the most obvious way to switch between programs on Mac OS X, but even it has a couple of useful keyboard-modifiers to smooth things along:
- alt (⌥) clicking on a program switches to it, while simultaneously hiding every other program
- command (⌘) clicking on a program reveals its location in the Finder.
⌘ tab (application-centric)
Pressing command-tab brings up a semi-transparent head-up display with the icons of all currently running applications. There are a handful of keyboard shortcuts that can be used after releasing the tab key, but with ⌘ still held down:
- H: hides the currently selected application (with the white border around it)
- Q: quits the currently selected application
- Tab: cycles forwards through open applications
- ~: cycles backwards through open applications (shift-tab also does this, but I find ~ much easier to press)
- The left and right arrow keys, and indeed the mouse, also allow selection of the program.
When you actually want to switch to the selected program, simply release the command key (or click on the program with the mouse).
Exposé (window-centric)
Exposé allows you to see all open windows simultaneously by pressing F9 (or whatever you have assigned to it in the Dashboard and Exposé preferences pane). Alternatively, you can see just the windows of the current application by pressing F10. Or finally, you can temporarily reveal the Desktop by pressing F11. There are a couple of interesting tips regarding Exposé:
- You can switch from All windows mode to Application windows mode by either (as you might expect) pressing F10 or by pressing tab. Subsequent presses of tab move through all open applications in Application windows mode. Nifty. Shift-tab moves through in the reverse order.
- In All windows mode, you can move around the windows using the arrow keys.
⌘ ~ (window-centric)
Finally, this is a great one: press ⌘~ in any program with more than one window open and it’ll switch between the open windows belonging to that program.
So that’s that. Now, you might be asking yourself why I’ve only just written this when all these features have been available since Panther at the latest… Well, my main reason is that last week a Windows-using friend was watching me produce a document in Pages, all the while switching back-and-forth between Safari, Mail, Aperture, Photoshop and Finder using a combination of the above methods. They were clearly so impressed that they felt the need to comment on how quickly I was managing to piece together the various parts of the document.
This made me realise that the combination of Exposé, command-tab and the Dock allows for a huge amount of flexibility in how you move around the OS X interface and, as noted by my fellow student last week, these choices clearly have a huge beneficial effect on productivity. For that reason I, for one, am definitely looking forward to spaces in Leopard…