Top Related Projects
A cross-platform, OpenGL terminal emulator.
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Cross-platform, fast, feature-rich, GPU based terminal
A terminal built on web technologies
The new Windows Terminal and the original Windows console host, all in the same place!
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
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.
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.
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.
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.
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.
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 designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
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:
- press
F1
or at https://gnome-terminator.readthedocs.io/en/latest/
More info about shortcuts and cli config in man pages:
man terminator
man terminator_config
Contributing
Any help is welcome with the Terminator project.
- Open issues for bugs or enhancements
- Join our chat room on gitter.im for general questions
- Help translating Terminator
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
Top Related Projects
A cross-platform, OpenGL terminal emulator.
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Cross-platform, fast, feature-rich, GPU based terminal
A terminal built on web technologies
The new Windows Terminal and the original Windows console host, all in the same place!
tmux source code
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot