rxvt-unicode with its Perl API [1] and rather amazing list of Perl extensions [2] on Linux OSes, puttycyg on Cygwin. (I recommend puttycyg if you've been using rxvt on Cygwin. Being able to type Unicode characters is an amazingly exhilarating experience, especially if you're lonely.)
I'm giving puttycyg a whirl. It uses different key codes than xterm - xterm does not default to VT220 keyboard, but puttycyg does. And both of these are different to rxvt. This primarily affects readline, and thus the bash shell.
For example, xterm sends '\e[H' for Home by default, while puttycyg (and xterm in VT220 mode) sends '\e[1~' and rxvt sends '\e[7~'.
I can configure some overrides in .inputrc, but sooner or later these start to conflict with one another if I want to be able to switch at will. Seems easier to stick to rxvt, and know that my preferences in ~/.Xdefaults also apply on non-Windows boxes.
rxvt-unicode also has some of the best (most accurate, most complete) terminal emulation out there, second only to xterm. Daemon mode is also a neat trick if you're running on a limited-memory system.
I don't have that problem. Perhaps there's something glitchy about the way rxvt-unicode works with your setup in particular -- which might be an rxvt-unicode problem, but not a problem that affects me, evidently.
On Windows I use MinTTY -- it is basically perfect on that platform. It's bizarre how ridiculously terrible every other windows tty is: simple shit like text selection, copy-paste, window resizing, fonts, etc. is universally missing.
I only discovered it due to my boss' "install everything" cygwin policy, as it's in their repo and its installer puts a link on your desktop.
PuTTY is bad enough as an SSH client, much less its crap terminal emulation. Whoever at Microsoft that keeps making the decision to ship cmd.exe again needs to be hanged in public square.
On putty: I'm surprised to hear all the bad vibes for putty - what's wrong with its terminal emulation? I adore putty - you can configure it so that it toggles full-screen with alt+enter and can load sessions with windows+r, 'putty -load {session name}'. It's easy to configure different colours for different profiles so it's easy to always have my production consoles in red. I haven't found such a straightforward way of getting that going in a linux desktop setting (other than using putty for linux which is unrefined). The default font isn't all that nice but I think I use terminal size 10 and that looks nice. Putty supports all the stuff you criticise - 'text selection, copy-paste, window resizing, fonts' - what's the downside? I tend to use it in gnu-screen and don't have problems with this.
On cmd: Funnily enough that cmd environment has become less powerful over the evolution of Windows. For instance, it used to be possible in win2k era to bundle a complete application as a batch file by having code stored as text and written out when it ran - through a couple of mechanisms using minor features. Those features which were subsequently removed, presumably to stop just this sort of hack. The latest versions of Windows don't have telnet as standard - I'm at a complete loss to know how I'm meant to do connectivity testing with clients who don't have it and don't have permission to install it - the telnet mechanism in Windows was bad enough as it was but now they've made things worse. I've found Windows scripting host to be very poor for doing networking. It's also very crippled.
(When I'm in OSX I use iTerm because it's the only way I've found to get a nice full-screen console under the current release of OSX)
CME.EXE is about backwards compatibility. New work should be done in PowerShell' which is quite clever (think Unix pipes with COM objects instead of plain text).
You're confusing shells and terminal emulators (if you can call them that under windows).
You can use the "Powershell ISE" thing as a tabbed "terminal", but Powershell itself will quite happily run under the windows console "terminal emulator".
Are you talking about the backspace issue? There are some old patches from ubuntu that show how to fix it (though they they don't seem to use them themselves anymore):
rxvt and friends gave me problems using truetype fonts. They have their own code for calculating widths which gives the wrong answer even when it's monospaced.
I wish there were more terminals. It may seem like there's a lot but they are derived from a fairly small number of roots and they inherit all of the bizarre behaviour.
Terminal.app is very good in many ways, but Apple really needs to work on the configuration mechanism before I can use it regularly.
I frequently want to make tweaks to one window, and I just can't stand having to make a new set of Preferences every time a window disagrees with the established settings. Since the sets contain everything (colors, terminal attributes, long lists of key mappings, etc.) there are potentially a lot of things to redo.
Also, what's bizarre is that opening a saved file has the side effect of automatically creating a new, permanent set of Preferences. There isn't much point in having files if Terminal insists on re-storing everything as Preferences anyway.
Try out iTerm sometime. Much, much faster and lighter than Terminal.app. I switched to iTerm when Terminal.app crashed while compiling Haiku ... twice. The problem, I believe, was the large amount of compiler output.
I used iTerm before Leopard, but it crashed at least once a week, and sometimes it would just forget settings, and it used up an insane amount of resources if you left it open for a few days (and shutting down all my ssh sessions and restarting them is not my idea of a good time, nor is trying to figure out where I put this server or that server in the tab list; I like them to stay at the same position so I don't have to consciously think about that).
When Leopard came out, it had a Terminal.app that fixed essentially all my issues with the previous Terminal.app, including having tabs, etc, and it hardly uses any resources at all, and stays open without crashing for weeks at a time (in fact, I don't think I've ever managed to crash it). Now that there's a copy-on-select plugin for SIMBL for Terminal.app, it's just about perfect.
> (and shutting down all my ssh sessions and restarting them is not my idea of a good time, nor is trying to figure out where I put this server or that server in the tab list; I like them to stay at the same position so I don't have to consciously think about that).
I use screen on my servers to avoid losing history and for running non-daemons, but I find it convenient to have "physical" tabs to remind me of where I am.
I recently switched back to iTerm due to its full screen option, which I use when I want to really concentrate and/or see some really wide output. Back in the Panther/Tiger days it used to crash rather frequently, seems a lot better now; I haven't had it crash in some time. I can tolerate the occasional crash because my sessions are always protected by screen.
I definitely feel performance increases all over the place in 10.6. Particularly in Terminal.app... it's super snappy! Directory listings are instantaneous whereas before there seemed to be a slight little lag.
Note: I am using zsh with my term declared as xterm.
Putty, with a cygwin patch. Works fine, only gripe with it is I can't press Windows+Left and have it take up the left half of the screen. It just refuses to resize.
The windows terminal is just horrible.
I tried Console2 but it was buggy as hell, froze all the time, and the transparency made it lag.
Guake, which provides a Quake like terminal and quick and easy access to a terminal using the F12 key. Plus, it supports anti-aliased fonts and multiple tabs.
http://trac.guake-terminal.org/
konsole. It's so much better than the gnome-terminal (monitor for silence/activity rules!).
Actually, in recent years, it seems like gnome has gotten harder and harder to use for an expert in all aspects...I occasionally have to work on a gnome machine and it's pure hell trying to figure out how to get simple stuff to work.
Of course, perhaps this is their goal in any case: target n00bs and grandmas to increase marketshare. If so, I'm perfectly fine with that =)
In Konsole you can split the window a là Emacs or Vim buffers, which is pretty handy always. The special keys works, not like F1 in gnome-terminal which opens the help.
How many times do you switch between terminals because you need to copy something or whatever? That's over with Konsole
for a 1 time command that I don't need to look at again I'd just use alt+f2 kde's 'run prompt' is pretty good. of course it doesn't actually provide the 'shell environment'.
I used to use konsole, because it was default with KDE. After some time I made a conscious effort and switched to rxvt-unicode, or urxvt. It's a great terminal emulator, once you've got it configured, but that process can be tough. The documentation for the really cool stuff has also been a tad incomplete for me.
On the Mac, I use MacTelnet, even as a local terminal. It has an almost ridiculous number of features (compared to Terminal.app or iTerm, anyway), and is very configurable. The main problems are that it is mainly vt100/partial-xterm, and is a beta.
On Linux or Solaris, I use "aterm". It works as well as xterm or rxvt. But it has a lot of nice interface tweaks, such as NeXT-style scrollbars, pseudo-transparency, more intelligent text selection (IMHO), and a way to change colors when inactive.
On Windows, I don't run much locally (since not a lot of useful command-line tools come with Windows). So my terminal work tends to be over SSH to a machine that has real tools. :) I use PuTTY for SSH, and it works very well. My main issue is that it seems unnecessarily hard to do certain things, e.g. copy/paste.
I used to use aterm, but one thing drove me to change -- Unicode support. Now, I use rxvt-unicode.
Since making the move, though, I've grown to love rxvt-unicode's daemon mode and discovered that pseudo-transparency works better than it did on aterm. I mention my reasons for choosing rxvt-unicode over other terminal emulators here:
Wikipedia's information about it confuses me. It says xcompmgr is a window manager, but it says it "does not replace any existing window manager". Does this mean it would replace AHWM, or that it would just add compositing to AHWM -- or something else entirely?
Also . . . what about it is difficult to "stomach"?
xcompmgr is a Composite manager. It will run along side any other window manager (that doesn't already do compositing... this excludes Compiz, newer KWin, Xfce4's window manager, but exactly what would happen if you tried to run xcompmgr and Compiz at the same time I don't know). It just does things like add drop shadows around windows and enable true transparency. {edit} You can configure the drop-shadows or disable them through command-line options {/edit}
I said 'stomach' because xcompmgr has been unstable at times in my experience. IIRC, none of the xcompmgr crashes have taken down X11 or the window manager. I have not used it in a while though so it may have changed, but I was under the impression that it doesn't get much work done on it. It's original goal was just to be a reference/example implementation of the compositing extension for X. I could be wrong though and it might be in a more stable state now.
If anything you might be motivated to see if there is a way to run it with debugging information. I can't imagine it's highly complex in the way that I assume Compiz is. It might be fairly easy to do some fixing up of it, as long as a person is motivated to look into it.
Xterm. It's been there for me since 1988, and I'm certain it'll be there right up until the eschaton in 2038. It's installed on every X11 system and it's always compatible.
iTerm for OS X is fantastic. I like the custom keyboard profiles, full screen mode and appearance niceties (like tab styles and being able to hide the scrollbar). An especially great feature is the multiple tab input mode. Not too long ago I ssh'd into 3 new servers for three separate clients and did essentially the same setup and security updates for about an hour. At the end, I was able to bill for 3 hours.
http://iterm.sourceforge.net/
I also use Visor, a handy utility written by Nicholas Jitkoff (the creator of Quicksilver). It extends Apple's Terminal by giving it a heads-up display, making a terminal available in any program by simply hitting a keystroke. It doesn't work with Snow Leopard, though, and when I first upgraded I actually felt like one of my limbs was always asleep. Fortunately, there's a way to make it work:
For one-off commands where I don't need to see any output (like killing or renicing processes), I use Quicksilver in command mode and use the "run command in shell" action. The latest version of Quicksilver works with Snow Leopard with very minor problems:
1. Tilda.
* Buggy when you have transparency enabled and resize ( or minimize and then maximize ) the terminal. Otherwise, looks and feels great.
2. Yakuake.
* No bugs that I have discovered, and looks great. Is meant for KDE, but works awesomely on GNOME as well. The only nuisance is the title bar ( which can, at present have a minimum height of 1 pixel ), and we can't make it disappear completely.
I prefer Terminal.app, mostly because it uses the OS native keys for copy/paste (cmd-c, cmd-v). On windows I use putty which has keyboard paste on Shift-Insert. On linux I use gnome-terminal which has keyboard copy/paste on Ctrl+Shift+C and Ctrl+Shift+V. (I should stop using all three of these operating systems... :)
Rxvt, normally on Cygwin. If I had more use for Unicode in practice, I'd use urxvt on non-Cygwin.
Also, when ssh into remote boxes, I often use screen, which effectively ends up being a pretty crappy terminal - major failure mode is loss of scrollback buffer, Ctrl-A ESC notwithstanding.
Mouse wheel / Shift+PgUp is infinitely more usable for scrollback access than Ctrl-A ESC. Ctrl-A ESC is sufficiently hard to access that it might as well not be a feature - rather than scroll up to see a command's output, I re-run it piped to less.
Try Ctrl-A + [ which puts you into 'copy mode' and ] to exit 'copy mode'. While in copy mode you can use arrow keys and/or page up/down to go through screen's scrollback buffer.
I usually run anything that will have a wall of text piped to less anyways (with or without screen).
It supports 256 colors and is very fast. Terminal.app only for quick sessions. If only X11 fullscreen feature worked properly... (should probably try the latest build of XQuartz)
* Interactions with other systems and their termcap/terminfo files.
* Interaction with GNU screen (iirc, the 'auto-detect' feature of XFCE4-Terminal for which backspace sequence to send fails for me currently when using screen. I have to force it to use ^H as backspace)
* Support for more than just Type-1 fonts.
* How does the scrollback buffer work? gnome-terminal SUCKS when a wall of text hits the screen, while rxvt-unicode blows through it like nothing.
... There are many other things that could be brought up in relation to these (terminal emulators). For instance, rxvt-unicode has a powerful Perl API, and there are many modules that do things like (for instance) implement simple tabs for a rxvt-unicode window.
Jesus, I'd been using gnome-terminal sine I switched over to Linux full-time a few months ago. I assumed that the reason it was sluggish was because I'm running it on an old machine. I just installed rxvt-unicode after re-reading your post, and even after enabling a background image for no good reason it blows gnome-terminal away.
I managed to get quite a few excellent tips out of this discussion. I found a far less buggy terminal, and discovered a feature of Windows I didnt know existed.
[1]: http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/src/urx...
[2]: http://software.schmorp.de/pkg/rxvt-unicode.html