- no xterm mouse support (no, option-click is not the same)
- the utterly stupid default for PageUp/PageDown/Home/End, which is correct for OSX UI, but utterly wrong for terminals.
Less obvious (relavent to UI):
- No notification support
- No window splitting (yes, screen works, but, re: changing panes, see xterm mouse, above)
- inability to launch a particular named window group from the command line (if this is possible, please tell me how! :-))
...And much, much more! [1]
[1] :-) And I guess that's about it for the things that bugged me compared to, you know, the actual xterm.
Caveat - this is how my work laptop is setup, my personal one is set to "\033[H" and "\033[F" for home/end respectively, but it works as well and I don't remember how I set it up. I'm remembering having some issues with the prefs wanting to escape the backslashes so "\003[H" ended up as "\\003[H" or something like that...
For PageUp/PageDown I find that applying the shift key with them does the trick (at least in applications like vim/less). However you can probably apply a similar trick for them in the prefs.
The Control key (jumping word boundaries) works sometimes for me, sometimes not, haven't tracked that one down yet.
edit: by "correctly" for home/end I mean jumping to the beginning/end of a line.
Still, I'm genuinely curious because I know you're not the only one that finds Terminal lacking.
Also, I think a recent update added support for horizontally splitting windows (with cmd+D).
I do agree though, I think Apple could do a much better job with Terminal.
You can split windows vertically. Not horizontally.
Could you not use osascript to launch a window group from the command line?
iTerm was crashy for me. This is not acceptable, no matter the other features. I cannot recall ever crashing Terminal.app.
I've got, for example, ctrl+a+t setup to trigger a script that opens a new screen tab, prompts for [user@]host:, starts up an ssh session to the host, renames the tab to host for easy reference.
- 256 color support (for your pretty emacs or vim)
- advanced bookmarks, with tagging
- send to multiple tabs
It's also knows if any programs are running inside the shell and changes the red "X" button in the top left corner accordingly. If the button is "X", you know you can close the terminal without losing any work. If a program is running (even suspended with CTRL-Z) Terminal changes the button to a circle to indicate that work would be lost if the window was closed.
escape ^Zz
C-a interferes with command line editing and Emacs. C-z makes it a pain to background a process in screen, but if you're like me, you probably never do that, anyway.