Convert Figma logo to code with AI

gnome-terminator logoterminator

multiple GNOME terminals in one window

2,074
251
2,074
135

Top Related Projects

56,041

A cross-platform, OpenGL terminal emulator.

17,239

A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust

24,184

Cross-platform, fast, feature-rich, GPU based terminal

43,276

A terminal built on web technologies

95,296

The new Windows Terminal and the original Windows console host, all in the same place!

35,016

tmux source code

Quick Overview

Terminator is a powerful terminal emulator for Linux and Unix-like systems. It allows users to arrange multiple GNOME terminals in a single window, offering advanced features like customizable layouts, plugins, and extensive keyboard shortcuts.

Pros

  • Highly customizable with various layout options and color schemes
  • Supports multiple terminals in a single window with easy navigation
  • Offers a wide range of plugins for extended functionality
  • Cross-platform compatibility (Linux, BSD, macOS)

Cons

  • Can be resource-intensive, especially with multiple terminals open
  • Learning curve for advanced features and keyboard shortcuts
  • Some users report occasional stability issues
  • Not as actively maintained as some other terminal emulators

Getting Started

To install Terminator on Ubuntu or Debian-based systems:

sudo apt update
sudo apt install terminator

For other distributions, check your package manager or visit the official GitHub repository for installation instructions.

To launch Terminator, simply run:

terminator

Once open, you can split terminals horizontally with Ctrl+Shift+O or vertically with Ctrl+Shift+E. Right-click for more options and customization settings.

Competitor Comparisons

56,041

A cross-platform, OpenGL terminal emulator.

Pros of Alacritty

  • Faster performance due to GPU acceleration
  • Cross-platform support (Windows, macOS, Linux)
  • Minimal resource usage

Cons of Alacritty

  • Limited built-in features compared to Terminator
  • Steeper learning curve for configuration
  • No GUI for settings management

Code Comparison

Alacritty configuration (YAML):

window:
  dimensions:
    columns: 80
    lines: 24
  padding:
    x: 2
    y: 2
font:
  normal:
    family: monospace
    style: Regular

Terminator configuration (INI-style):

[global_config]
  title_font = Sans 10
  title_use_system_font = False
[keybindings]
[profiles]
  [[default]]
    font = Monospace 10
    use_system_font = False
[layouts]
  [[default]]
    [[[window0]]]
      type = Window
      parent = ""
    [[[child1]]]
      type = Terminal
      parent = window0

Alacritty focuses on performance and minimalism, offering a lightweight terminal emulator with GPU acceleration. It provides cross-platform support but requires more manual configuration. Terminator, on the other hand, offers a more feature-rich experience out of the box, including split-screen functionality and a GUI for settings management. However, it may be less performant and is primarily designed for Linux systems.

17,239

A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust

Pros of WezTerm

  • Cross-platform support (Windows, macOS, Linux)
  • GPU-accelerated rendering for improved performance
  • Extensive configuration options via Lua scripting

Cons of WezTerm

  • Steeper learning curve due to Lua configuration
  • Larger resource footprint compared to Terminator

Code Comparison

Terminator configuration (Python):

[global_config]
  title_transmit_bg_color = "#d30102"
  focus = system
[keybindings]
[profiles]
  [[default]]
    background_color = "#282828"
    cursor_color = "#aaaaaa"
    foreground_color = "#ebdbb2"

WezTerm configuration (Lua):

local wezterm = require 'wezterm'

return {
  color_scheme = "Gruvbox Dark",
  font = wezterm.font("JetBrains Mono"),
  font_size = 11.0,
  enable_tab_bar = false,
}

Key Differences

  • Terminator uses a more traditional INI-style configuration, while WezTerm employs Lua for advanced customization
  • WezTerm offers broader platform support and GPU acceleration
  • Terminator provides a simpler, more familiar interface for Linux users
  • WezTerm's Lua configuration allows for more complex and dynamic settings

Both terminals offer split-pane functionality and customizable keybindings, but WezTerm's cross-platform nature and performance optimizations make it a strong contender for power users across different operating systems.

24,184

Cross-platform, fast, feature-rich, GPU based terminal

Pros of kitty

  • GPU-accelerated rendering for improved performance
  • Extensive customization options and configuration flexibility
  • Support for ligatures and advanced font features

Cons of kitty

  • Steeper learning curve due to more complex configuration
  • Less intuitive GUI for managing multiple terminals compared to Terminator

Code Comparison

Terminator configuration example:

[global_config]
  title_transmit_bg_color = "#d30102"
[keybindings]
[profiles]
  [[default]]
    background_color = "#282828"
    cursor_color = "#aaaaaa"
    foreground_color = "#ebdbb2"

kitty configuration example:

font_family      Fira Code
bold_font        auto
italic_font      auto
bold_italic_font auto

background #282828
foreground #ebdbb2
cursor     #aaaaaa

map ctrl+shift+c copy_to_clipboard
map ctrl+shift+v paste_from_clipboard

Both Terminator and kitty are popular terminal emulators, but they cater to different user preferences. Terminator focuses on a more traditional, GUI-driven approach with easy-to-use split-screen functionality. kitty, on the other hand, offers a more modern, performance-oriented experience with extensive customization options for power users. The choice between the two depends on individual needs and preferences for terminal functionality and configuration style.

43,276

A terminal built on web technologies

Pros of Hyper

  • Built with web technologies (HTML, CSS, JavaScript), making it highly customizable and extensible
  • Cross-platform support (Windows, macOS, Linux)
  • Active development with frequent updates and a large plugin ecosystem

Cons of Hyper

  • Can be resource-intensive due to Electron framework
  • May have slower performance compared to native terminal emulators
  • Limited built-in features, requiring plugins for advanced functionality

Code Comparison

Terminator configuration (Python):

[global_config]
  focus = system
  suppress_multiple_term_dialog = True

[keybindings]
  split_horiz = <Primary><Shift>o
  split_vert = <Primary><Shift>e

Hyper configuration (JavaScript):

module.exports = {
  config: {
    fontSize: 14,
    fontFamily: 'Menlo, "DejaVu Sans Mono", Consolas, "Lucida Console", monospace',
    shell: '/bin/zsh'
  },
  plugins: ['hyper-material-theme', 'hyper-search']
};

Terminator is a Python-based terminal emulator with a focus on tiling and multiple terminals. It offers a more traditional approach with built-in features for splitting and arranging terminals. Hyper, on the other hand, is a modern, web-based terminal that prioritizes extensibility and customization through its plugin system and web technologies. While Terminator may offer better performance, Hyper provides a more flexible and visually appealing experience for users comfortable with web development.

95,296

The new Windows Terminal and the original Windows console host, all in the same place!

Pros of Terminal

  • More active development with frequent updates and new features
  • Extensive customization options, including themes and color schemes
  • Better integration with Windows OS and PowerShell

Cons of Terminal

  • Limited cross-platform support (primarily Windows-focused)
  • Steeper learning curve for advanced features and customization
  • Larger resource footprint compared to Terminator

Code Comparison

Terminator configuration (Python):

[layouts]
  [[default]]
    [[[child1]]]
      type = Terminal
      parent = window0
    [[[window0]]]
      type = Window
      parent = ""

Terminal configuration (JSON):

{
    "profiles": {
        "defaults": {
            "colorScheme": "Campbell",
            "fontFace": "Cascadia Code"
        }
    }
}

Summary

Terminator is a lightweight, cross-platform terminal emulator with a focus on simplicity and ease of use. It offers basic split-screen functionality and is popular among Linux users.

Terminal, on the other hand, is a more feature-rich and customizable option, primarily designed for Windows. It provides extensive theming capabilities and better integration with Windows-specific tools and environments.

While Terminator uses a Python-based configuration, Terminal relies on JSON for its settings. Both projects are open-source and actively maintained, but Terminal has a larger community and more frequent updates due to Microsoft's backing.

35,016

tmux source code

Pros of tmux

  • Runs in terminal, making it usable over SSH and on headless systems
  • Highly customizable with extensive scripting capabilities
  • Sessions persist after disconnection, allowing for easy reattachment

Cons of tmux

  • Steeper learning curve due to keyboard-driven interface
  • Less intuitive for users accustomed to GUI-based terminal emulators
  • Limited built-in mouse support (though can be enabled)

Code Comparison

tmux configuration example:

# ~/.tmux.conf
set -g mouse on
bind-key v split-window -h
bind-key s split-window -v
set -g status-bg black
set -g status-fg white

Terminator configuration example:

# ~/.config/terminator/config
[global_config]
  title_transmit_bg_color = "#d30102"
[keybindings]
  split_horiz = <Ctrl><Shift>O
  split_vert = <Ctrl><Shift>E
[layouts]
  [[default]]
    [[[child1]]]
      type = Terminal
      parent = window0

While tmux uses a single configuration file with command-like syntax, Terminator uses an INI-style configuration file. tmux focuses on session management and key bindings, while Terminator's configuration emphasizes layout and appearance settings.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Terminator

Started by Chris Jones cmsj@tenshu.net in 2007, maintained from 2014 to 2020 by Stephen Boddy, currently maintained by Matt Rose. Terminator has had contributions from countless others listed in the AUTHORS file

Description

Terminator was originally developed by Chris Jones in 2007 as a simple, 300-ish line python script. Since then, it has become The Robot Future of Terminals. Originally inspired by projects like quadkonsole and gnome-multi-term and more recently by projects like Iterm2, and Tilix, It lets you combine and recombine terminals to suit the style you like. If you live at the command-line, or are logged into 10 different remote machines at once, you should definitely try out Terminator.

When you run Terminator, you will get a terminal in a window, just like almost every other terminal emulator available. There is also a titlebar which will update as shells/programs inside the terminal tell it to. Also on the titlebar is a small button that opens the grouping menu. From here you can put terminals into groups, which allows you to control multiple terminals simultaneously.

New home on GitHub

In April of 2020 we started moving Terminator to GitHub. A new team wanted to continue the work of the original authors.

You can find the project on https://github.com/gnome-terminator/terminator

Installing

Terminator is available for most (if not all) Linux distributions from the distribution's repository of binary packages. It is also available on FreeBSD. Please search your repository for terminator If you want to find information on how to enable an updated package repository for your OS, build from source, or want to run the bleeding-edge master version, you can follow the instructions in INSTALL.md

Quick Start:

Create more terminals by:

  • horizontal split: Ctrl-Shift-o
  • vertical split: Ctrl-Shift-e

Shift focus to:

  • next terminal: Ctrl-Shift-n
  • previous terminal: Ctrl-Shift-p

New tab: Ctrl-Shift-t

New window: Ctrl-Shift-i

Close terminal or tab:

  • Ctrl-Shift-w
  • or right mouse click -> Close

Close window with all it's terminals and tabs: Ctrl-Shift-q

Reset zoom: Ctrl-0

Terminator Preferences menu:

  • right mouse click -> Preferences

These and more modifiable shortcuts in:

  • right mouse click -> Preferences -> Keybindings tab

Web Documentation:

More info about shortcuts and cli config in man pages:

  • man terminator
  • man terminator_config

Contributing

Any help is welcome with the Terminator project.

You can find old bugs and questions in the launchpad project, but please don't post anything new there.

Origins

Terminator began by shamelessly copying code from the vte-demo.py in the vte widget package, and the gedit terminal plugin (which was fantastically useful at figuring out vte's API).

vte-demo.py was not my code and is copyright its original author. While it does not contain any specific licensing information in it, the VTE package appears to be licenced under LGPL v2.

The original version 0.1 release of Terminator was on Saturday, 28 July 2007. Here is the archived Terminator 0.1 release announcement

Licensing

The gedit terminal plugin is part of the gedit-plugins package, which is licenced under GPL v2 or later.

I am thus licensing Terminator as GPL v2 only.

Cristian Grada provided the old icon under the same licence. Cory Kontros provided the new icon under the CC-by-SA licence. For other authorship information, see debian/copyright