Slashdot Mirror


Decent Terminal Emulation on Mac OS X?

Drawoc Suomynona asks: "After settling into Mac OS X over the last four months, I'm generally impressed. However, due to the sort of development work I do, I spend a great deal of my time in a terminal. Unfortunately for me, decent terminal emulation seems to be one area where Mac OS X is quite lacking. What's your answer to the state of terminal emulation on the Mac?" Drawoc summarizes the currently available offerings and their drawbacks, below.

"Take, for instance, the following options:

  • Apple's Terminal is slow (though performance has been better in 10.2.x), doesn't support xterm mousing, and for some reason refuses to send PgUp/PgDn through to any applications running in the terminal (gah!). Sure, transparency is nice, and with some hacking about (when was the last time you had to force "stty erase"?) you can get decent enough color xterm emulation, but... what's with the lack of PgUp/PgDn?
  • The open source iTerm is slightly better, but, it's awfully slow (it grabs as much as 30% of the CPU per terminal instance... now imagine a full-screen vim session at 1600x1200... it's utterly unusable). It also neglects to support xterm mouse reporting.
  • The closed source GLTerm ($10) is probably the best of the three "native" options, from a certain perspective. It manages to sidestep the CPU usage/UI responsiveness issue by rendering the entire terminal using OpenGL (yes, the characters are actually textures on GL primatives). It supports xterm mouse reporting. However, font choices are limited, it works only on supported video cards, and it has a very annoying "fuzzy text bug" if you set your terminal to the wrong size.
  • Finally, you've got xterm :) But, it means you need to run X11 (either XDarwin or Apple's X11) and it doesn't integrate as nicely into the OS X workflow..."
So, is there a secret terminal port from NeXTSTEP lurking in the pocket of some intrepid young hacker, who is, as I write this, poised to lead us to salvation?"

4 of 115 comments (clear)

  1. Fink by qlippoth · · Score: 5, Informative

    Fink has a handful of terminals ported to OSX. You've still got the issue of having to run X11 though.

    http://fink.sourceforge.net/pdb/section.php/x11

    --
    Mmmm, -funroll-loops
  2. TERM environment variable make a difference by payam · · Score: 5, Interesting

    The TERM environment settings for Terminal.app make a big difference in its behaviour. Normally with Terminal it's useful to have the TERM environment variable be 'xterm-color'. This will enable lots of interesting things, amongst them ANSI color. But, as described, this has it's drawbacks, including the fact that scrollback doesn't work as expected. Sometimes it's useful to launch any apps that need that functionality prefixed with 'TERM=vt100'. I run screen this way( 'TERM=vt100 screen') and it works much better as a result.

    Alas, this doesn't affect speed but it does enable improved functionality.

  3. Re:you could use Rxvt by bobthemonkey13 · · Score: 5, Informative

    Look into a UNIX utility called screen. I'm not sure if it's included in OS X, but I use it all the time on Debian and OpenBSD and it's wonderful. You can detatch and reattach sessions, so if Terminal crashes, you can just open another one and run screen -R to pick up where you were. It also supports creating multiple windows in the same terminal, and a whole ton of other features that I haven't even tried yet. I've even used it to start a process locally, then ssh in later and automagiclly take control of the process. It should compile without problems on OS X; there might even be binaries available.

  4. My two solutions: DataComet and Eterm....[+] by ewwhite · · Score: 5, Informative
    I run Fink and XDarwin on my Powerbook. My company produces a terminal/character-based ERP application for the produce industry. It runs on hardware terminals and also has a home-brewed PC client (with a Linux backend). We use a SCO-ANSI emulation with a few custom termdefs.

    There are very few clients (puTTY and Powerterm) on the PC that can handle our product. The Mac situation is much worse. It took me a few months to find an appropriate solution for working with our clients from my Mac. The winners are:

    Eterm -free- Get version 0.9 through Fink. It's much faster than Apple's terminal application and is much more configurable.
    Here's a shot of a typical Eterm on my machine

    DataComet -not free- but worth it. This program is similar to Powerterm on the PC side. It can handle just about any emulation you throw at it. Powerterm and DataComet both include their own font suites which allow for full PC-ANSI emulation, for example. Very comprehensive package. It integrates with the built-in shell and even handles my company's software.
    Here's a screenshot of DataComet on my system

    Here's a random screenshot.

    Note: There is a Powerterm for Mac OSX, but it's fairly expensive, and DataComet performs as well. Hit me up if you have any questions....

    --
    Edmund White
    http://flickr.com/ewwhite