I appreciate cmd-T as a more flexible replacement for old-school keyboard buffer switchers like the traditional Emacs c-x b action. However, one of the most critical uses of c-x b, in my experience, is the ability to instantly toggle between the last 2 buffers in the current window/pane, which cmd-T (and the stationary ordering of the tabs, as compared to something like the stack ordering of the File History dropdown in XCode editor panes) cannot accomplish.
I understand that certain special cases of toggling, like switching between matching, identically-named header and implementation files can be accomplished with special commands and that toggling can be achieved by manually reordering tabs in such a way that the desired 2 files are adjacent in the tab list, but this misses the deeper point that toggling between the last 2 files -- no matter how they were reached, what their file name relationship is, or where they fall in the tab list -- is one of the most central and frequently performed actions at least in my programming experience. (And it is, of course, all the more critical without split pane support ;).
It seems to me, however, that this can be addressed quite simply and elegantly in the context of the current cmd-T system. All that would have to happen is that the first item in the list would always default to the last active tab when the window is first opened. Given that the list ordering is dynamic and adaptive, รก la Quicksilver, it hardly seems that this very subtle reordering would present any sort of usability issue or confusion. Of course, how this most-recently-used item might be prioritized in the list after the user starts typing, if at all, is an open question, but one which need not even be answered a first version (the behavior can perfectly reasonably be just as it is now after the first search letter is typed).
The general issue of fast toggling and navigation between files also brings up a small related thing I've been wanting to see for some time:
I would love to have the ability to re-order tabs using the keyboard, alone -- just something akin to select next/previous tab, but which moved the current tab right/left.
That's it for now. Back to the code. -jrk