As noted earlier in this chapter, at least two other Aqua-native terminal applications are available: GLterm (shareware) and iTerm (freeware). Although Mac OS X's Terminal application is quite rich in useful features, GLterm and iTerm offer some interesting features that make these applications worthy of consideration as alternate comman. We won't cover these terminal emulation applications in great detail, but this section will focus on a few of their most interesting features.
Before getting into what makes these distinct, here are some similarities:
GLterm (http://www.pollet.net/GLterm/) was developed by Michael Pollet to use X11 .bdf fonts and render them using OpenGL, provided that it's run on a machine with a 3D accelerator supported by Mac OS X. GLterm supports ANSI color , vt102/ xterm emulations, and DEC function keys.
The default behavior of GLterm is to use whatever shell is specified as the user 's default in Directory Services (see Chapter 3). The shell for GLterm can be easily changed to any available shell in GLterm's preferences. The default value for the TERM environment variable is xterm , but this can be changed to an xterm color in the shell by setting the TERM environment variable.
If you find that the fonts used by the Terminal cannot handle some specialized graphics required by a particular terminal-based application, you may want to consider using GLterm on a regular basis.
iTerm (http://iterm. sourceforge .net) was developed by Fabian and Ujwal S. Sathyam. Extensive documentation on iTerm is also available at its web site.
As with the Terminal, iTerm supports several language encodings, vt100/ANSI/xterm/xterm-color/rxvt emulations, and several GUI features. Particularly interesting features of iTerm include support for multiple tabbed terminal sessions within each window, bookmarks that allow you to open new iTerm sessions with preset terminal settings, and bookmarks for launching non-shell commands. The default value for TERM is xterm, but this can be changed either on the fly with the usual shell command, in the Configure menu or, if you want a global change, in iTerm's Preferences dialog.
The tabs feature will be familiar to GNOME users, since the gnome-terminal also supports this feature. Tabs in iTerm are designed to make efficient use of desktop space, much as they do in Safari and other popular web browsers. Figure 1-4 shows an iTerm window with two tabs.
Figure 1-4. Using tabs with iTerm
The same bash (or tcsh ) shell commands that can be used to customize the Terminal's titlebar work just as well with iTerm's titlebar. When used in iTerm, these commands also set the tab labels as shown in Figure 1-5.
Figure 1-5. Customized tab labels in iTerm
iTerm's support for bookmarks should be familiar to KDE users, since the KDE Konsole terminal emulator supports a similar bookmark feature. Bookmarks are used to define iTerm sessions with preset terminal settings. For example, you can define the text color or font to use.
To define a bookmark, click the Bookmarks icon in iTerm's toolbar, highlight the Default Session, click Add, and then click Edit to open a Session Settings dialog for this bookmark. From the Sessions dialog, you can set various characteristics, including the session name , which will be used when you open a session from the New icon in iTerm's toolbar. Figure 1-6 shows a Bookmark dialog in which we have defined three bookmarks after the Default Session. The session named bluetext opens another login shell in a new tab, OpenSafari opens Safari, and OpenSitesFolder opens the ~/Sites folder in the Finder.
Figure 1-6. Defining bookmarks in iTerm
iTerm's contextual menu consists of the following items: New Tab (which allows you to choose a session from the bookmarks), Browser (which opens the selected URL in your default web browser), Mail (which opens a compose mail window with the selected email address as the recipient), Copy, Paste, Save, Print, Print Selection, Select All, Clear Buffer, Close, and Configure.