Let me throw out one thing first: alt+tab is a mode, similar to insert or ex mode in vim, or even the foreground application mode of a window manager. Once I hold down alt and hit tab, I've entered a new mode in my window manager -- certain keystrokes that were associated with some action a second ago are no longer associated with those actions. This provides an opportunity for accepting new actions for those keystrokes.
Which brings me to Mac OS X's support for alt+tab application switching. In short: I like it. That's primarily because of two things:
- the icons are nice and large; and
- the arrow keys work!
See, Apple appears to understand the modal nature of alt+tab switching. So for people like me who don't like to contort their fingers -- and minds -- to cycle back and forth among applications with alt+tab and alt+shift+tab, there is an alternative. I simply hold down alt with my left thumb (I'm on a laptop, by the way), tap my tab key, release it, and then use my left and right arrow keys to cycle among the application icons. This gets important when you have a lot of applications open.
This brings me to my gripe. And, like I said, it's a small one. I'm cycling among my ten or twenty applications with either the tab key or the arrows, and when I get to the end of the list, it cycles around to the beginning of the list. Why? I think the proper behavior should be one of two things:
- stop the cycling and wait on the last icon until I release the key and (with tab still held down) re-press it; or
- insert a short delay, similar to a détente in the potentiometer controls found on electronic equipment.
I can hear one response already: Why aren't you using Apple's Exposé? Well, here's my reasons on that one:
- I don't really care for all that animation for something I do quite a lot -- I want speed.
- I'm pretty good at recognizing my applications by icon, but I'm not as good at recognizing them by window.
- The keyboard! Using the keyboard for Exposé is not that great -- the windows are arranged according to size, and there's no cycling order for them. You have to use the directional arrows to navigate the arbitrary ordering, so it feels like playing some kind of maze game. So you're left with the mouse.
Well, what about the Windows version of alt+tab? It's pretty terrible. No arrow key support. It works on the window level, not the application level like Apple's version. Have you ever tried to use it with, say, 20 windows open? I can't speak for Windows Vista, thankfully.
A final thought: I would appreciate having control over the application-vs-window cycling choice. How about allowing me to pick keys for either behavior? Alt+tab (with arrows) would cycle among applications, while Ctrl+tab (with arrows) would cycle among the open windows within a single application. How about that?
I'll wait for another day to expound my theories on keystroke economy (here comes jkl;!).