Naive question, but I keep trying iTerm and not being able to quite figure out why I should switch. In the mid-2000s it was a much better program than Terminal.app, but that doesn't seem to have been true for quite some time. Terminal.app has tabs, 256-color mode, themes, full screen support, and as people have mentioned in other comments, session recovery and much better performance. The only things I can think of offhand that that leaves in iTerm's court -- at least in the 1.x series -- is tmux integration and autocompletion. The latter I've never seen the point of (my shell does that pretty well, thanks) and after trying the former it seemed like it was more bothersome than just letting tmux handle everything on its own.
Okay: iTerm can put borders around its windows, which one of my friends says Terminal.app's inability to do makes it unusable for him. But beyond that, I just haven't been sold. (If that's the right phrase for free software. You know what I mean.)
[Edit: I think the tmux integration was a 2.x-dev feature, so I must have been using that. IIRC, I actually preferred tmux's own "window" handling.]
The most important benefit for me is the "Hot key" feature. I used to have Kuake back in my Linux days, and loved it. It's so much more convenient that having many different screens, and switching between them via "Cmd-Tab". It's gotten to the point where I very rarely open dedicated windows, unless I'm doing some serious debugging or so.
For those who don't know about the hot key; I press "Ctrl-~" to have a terminal screen dropdown from the top of the screen. You can have any number of tabs and splits there. Pressing the same combination again closes it.
The neat thing is I know I can access the terminal with the same single keystroke, no matter which app I am using. Does Terminal.app has this feature?
There is a tool named TotalTerminal (formerly "Visor") for the Mac which extends Terminal.app and does exactly this. I even have control-~ mapped to the behaviour. It seems pretty configurable, and hooks nicely into the prefs window of Terminal itself. You can hit cmd-opt-F to temporarily switch the current Terminal into full-screen mode, in case you need to delve into a particular task.
Yes, I also used to have TotalTerminal. But I found that using iTerm from the ground up was somehow more convenient than using TotalTerminal with the regular Terminal. Don't quite remember what was the particular reason.
This is exactly why I started using iTerm. You and I even use the same key combination! It is so convenient that whenever I use others' machines, I try to bring down the visor and get frustrated when nothing happens.
Terminal.app can do this with the help of TotalTerminal. I used to use that, but switched over to iTerm for the greater degree of customization.
I'm in a shell most of my day when not in meetings. I love being able to have a nice full screen with vertical and horizontal splits (Cmd-D or Shift-Cmd-D) with thin lines between each split. Also iTerm helps me keep my hand off my mouse and when I do use my mouse iTerm makes my usage very efficient (double click to copy text .. Cmd-V paste, right-click lots of stuff right in your face on the spot..)
I'm less about tabs and more about splits, with two 24" monitors and my 13" MBP on my desk I can have lots of text space to work with and very little window distraction from window chrome.
Maybe it's just because I'm old fashioned and I love to live on the command prompt (vim -vs- sublime all day long) and I grew up in the era of TTY's and 300 Baud modems.. iTerm feels more natural then Terminal.app, it feels like a terminal someone would use all day long -vs- something you hop in for 20 seconds to type some obscure OSX command you cut-paste'd from some site.
In the past I ran into dumb emulation issues with Terminal.app like wrapping and stuff that didn't work right. iTerm seems to be a "programmers" terminal more then a simple utility to get to the command line.
I have a terminal open nearly all the time, too! I suppose I tend to just open multiple terminal windows, and resize/organize them with Moom (or just the mouse). I can cycle between them on the keyboard, and Terminal lets me paste with middle click, has context right-click menus, etc. (I only recently noticed it has man page lookup in the right-click menu, and learned that if you option-click anywhere in a Terminal.app window it sends that as a mouse click to the app running inside it!) If I absolutely want panes within the same terminal, I run tmux locally.
Terminal.app used to suck, certainly. I suspect a lot of iTerm users are long-term users who really haven't seen how much better Terminal.app is today than it was five or six years ago.
If I could ask an unrelated question, what are you using to power 2 external monitors on your MBP? I have a 30" monitor at $work, but a pair of smaller monitors would be even better.
Modern MBP's have two thunderbolt plugs.. Thunderbolt to DVI to two Dell U2412M's makes for a nice dev environment if you spend a lot of time in terminals.
Not less then one column character borders.. It has to burn a column to create borders.. And a couple of other laggy issues.. I need to play with tmux more but when on a bunch of different machines going iTerm straight to the box and using splits makes for a more enjoyable experience.
IMHO Arguing about terminal emulators is almost as religious as arguing about languages. Pick what works for you and I won't judge you if you don't judge me.. Now can we get back to solving real problems.. LOL :-)
Interesting, I've been using iTerm for so long that I didn't realize that Terminal.app added themes and tabs. That was the primary reason I used iTerm in the first place.
Okay: iTerm can put borders around its windows, which one of my friends says Terminal.app's inability to do makes it unusable for him. But beyond that, I just haven't been sold. (If that's the right phrase for free software. You know what I mean.)
[Edit: I think the tmux integration was a 2.x-dev feature, so I must have been using that. IIRC, I actually preferred tmux's own "window" handling.]