Jump to content

GNOME Terminal

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Cvondrick (talk | contribs) at 17:26, 10 November 2010. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

GNOME Terminal
Developer(s)GNOME developers
Stable release
2.28.1 / October 19, 2009 (2009-10-19)
Preview release
2.27.92 / September 6, 2009 (2009-09-06)
Repository
Operating systemUnix-like
TypeTerminal Emulator
LicenseGPL
Websitewiki.gnome.org/Apps/Terminal Edit this on Wikidata

GNOME Terminal is a terminal emulator for the GNOME desktop environment written by Havoc Pennington and others. Terminal emulators allow users to execute commands using a real UNIX shell while remaining on their graphical desktop.[1]


Features

GNOME Terminal emulates the xterm terminal emulator and provides some of the same features as it.[2]


Profiles

GNOME Terminal supports multiple profiles.[3] A user can create multiple profiles for his or her account. Users can then set configuration options on a per-profile basis and assign a name to each profile. The available configuration options range from different fonts, different colors, emission of the terminal bell, the behavior of scrolling, and how the terminal handles compatibility with the backspace and delete key.

When GNOME Terminal starts, it can be configured to launch the user's default shell or run a custom command. These options can be configured per profile, allowing users to execute different commands depending on the profile. For example, some users may have one profile to launch their default shell, another profile that connects to another computer remotely through SSH, and finally a profile that opens a screen session.

Compatibility

GNOME Terminal supports a couple of different compatibility options for interfacing with older software that depends on varying keyboard-to-ASCII assignments. In computing, there has been ambiguity between the backspace key and delete key. When the user presses the backspace key, the computer can either delete the character before the cursor, or the character at the cursor, which introduces this ambiguity (see ASCII). GNOME Terminal allows the user specify which escape sequence the delete and the backspace key should generate [1]. Users can specify this option on a per-profile basis.

Colored Text

Colored text is available in GNOME Terminal, although users may turn this feature off. GNOME Terminal supports a basic set of 16 colors, which the user can choose [1]. Furthermore, GNOME Terminal has support for 256 colors by default, and some programs, such as vim, that can leverage that many colors.[4]

Background

GNOME Terminal supports a wide range of background options [5]:

  1. Solid color. Users can specify a solid background color per profile, using any of the millions of colors available on the GNOME desktop.
  2. Background image. Users can also give a background image. GNOME Terminal supports most common image formats, including JPEG, PNG, GIF and TIFF.
  3. Transparent background. Users can also select any amount of transparency (ranging from fully transparent to fully opaque). If the user has the option for compositing turned on, the background will reveal the windows behind the terminal window. Otherwise, if compositing is disabled, the terminal will only be translucent with the user's desktop wallpaper. Translucent backgrounds are desired because the user can read text behind the terminal while entering commands into the command line.

Mouse Events

Although GNOME Terminal is primarily a command-line interface and uses the keyboard for most input, GNOME Terminal has limited support for mouse events. GNOME Terminal can capture mouse scrolls and both left and right clicks [1]. Presently, it cannot detect the location of the mouse, but some terminal applications can utilize the mouse events, such as aptitude or vim. At this time, there is no support for touch based gestures.

URL Detection

GNOME Terminal parses the output and automatically detects snippets of text that appear to be URLs or email addresses [1]. When a user points to an URL, the text is automatically underlined, indicating that the user may click. Upon clicking, the appropriate application will open to access that resource.

Tabs

GNOME Terminal supports tabs [1]. Instead of users creating multiple windows, users can create tabs. The tab bar appears on the top of the screen as buttons, which users can click to change between tabs. The intended purpose of tabs is to improve the ability with which users can organize their terminals, instead of cluttering their task bar. Similar to the profile feature, each tab can be assigned a name.

In order to improve usability, all operations regarding tabs can be completed using keyboard shortcuts. By default, tabs can be created using Control + Shift + T and and can be closed with Control + Shift + W. Users can move to the next tab by pressing Control + Shift + PageDown or Control + Shift + PageUp to go to the next or previous tab respectively.

Safe Quit

In recent versions, when the user attempts to quit the entire graphical application, GNOME Terminal will prompt the user with a dialog box to confirm if the user truly wants to exit GNOME Terminal [1]. This feature is intended to reduce the risk of accidentally closing a terminal window (e.g., by clicking the window's close button) with a job already running. If a job is running and the user closes the window, the job will quit and the user will have to restart the job if exiting was an accident.

This feature is only present when the user closes the application through the graphical interface. If the user attempts to quit with the exit shell command, it is the responsibility of the user's shell to confirm the exit. Although not a GNOME Terminal feature, a popular shell, bash, offers similar functionality and will confirm if there are stopped jobs.

Development

GNOME Terminal is largely based on the VTE widget.[6] VTE, part of the GNOME project, has widgets that implement a fully functional terminal emulator. GNOME Terminal and VTE are both written in C [7].

Multi GNOME Terminal

Multi GNOME Terminal is a fork of the GNOME Terminal project with the goal of providing additional, more complex features. While the project is mostly inactive today, it still features some notable features that are not present in the regular GNOME Terminal:[8][9]

  1. Windows may be split both vertically and horizontally. This feature is similar to the functionality provided by GNU screen.
  2. Notifications for buffers. Multi GNOME Terminal can alert the user when the buffer has been inactive or changes after a period of inactivity.
  3. Support for pseudo graphics, allowing for higher-resolution graphics.

See also

References

  1. ^ a b c d e f g Sun GNOME Documentation Team. "GNOME Terminal Manual".
  2. ^ Thomas E. Dickey. "XTERM - Frequently Asked Questions".
  3. ^ "Get To Know Linux: gnome-terminal".
  4. ^ "More than 8 Color Vim Syntax Highlighting in GNOME Terminal".
  5. ^ http://www.youtube.com/watch?v=4g3LuRwDXLg
  6. ^ "Additional Widgets - Terminal Widget". 2003-10-18. Archived from the original on 2010-02-18. Retrieved 2008-05-02. {{cite web}}: |archive-date= / |archive-url= timestamp mismatch; 2008-05-21 suggested (help)
  7. ^ "VTE Reference Manual".
  8. ^ Cristiano De Michele. "Multi Gnome Terminal".
  9. ^ Mohammed Sameer. "It feels like losing a child..."