Linux

Extraterm – swiss army chainsaw of terminal emulators

Extraterm is an open source project to build a terminal emulator and expand it with new features to support modern workflows and do more than just act like a glorified teletype.

The software is billed as “The swiss army chainsaw of terminal emulators”.

Extraterm is in active development. The author considers it currently roughly ‘beta’ in quality.

Key Features

  • Two modes are available:
    • Normal mode – this mode acts as a traditional terminal emulator.
    • Cursor mode – allows users to navigate the screen and the contents of the scrollback using a cursor as in a text editor. Command output is editable in place. Multi-cursor editing. This mode, together with frames, lets you edit text already on the screen and prepare a complex command.
  • Backwards compatibility with the decades of existing terminal based applications.
  • xterm compatible.
  • Show images in the terminal. It works across ssh.
  • Shell integration unlocks powerful features such as frames around command output, reusing command output and in-place editing of text. bash, zsh and fish shells are supported. Powerful keyboard based cursor mode. Copy and paste without having to leave the keyboard.
  • Place frames around the output of commands. Frames also display the command which was executed and warns when a command has indicated failure status.
  • The “from” command lets you use previous command output as input for terminal commands. This enables new fast “ad hoc” workflows. Grab the contents of a frame and use it as part of a shell command.
  • Easy uploads and downloads using the shell integration, and works transparently across SSH.
  • Tabs – lets you run multiple terminal sessions at the same time. With multiple tabs and panes, split and tiled any way you like. The Horizontal Split and Vertical Split commands let you split the window in half with side-by-side groups of tables. These too can be split again.
  • Keyboard based selection.
  • Previous command output can be used as input for new commands.
  • Command Palette makes it easy to find and execute any command without leaving the keyboard. It shows where all relevant commands can be viewed, searched, and executed.
  • Text zoom.
  • Unicode support.
  • Color emoji.
  • Tips – helps you learn some of the features of the application.
  • Cross-platform support – runs under Linux, macOS, Windows (using Cygwin).

Website: extraterm.org
Support: Documentation, GitHub Code Repository
Developer: Simon Edwards
License: MIT License

Extraterm is built on the following technologies:

  • Electron – a platform for running desktop applications made using web technologies.
  • TypeScript – superset of JavaScript which adds static typing.
  • CodeMirror – text editor component which is used extensively to show terminal output and provide cursor based selections and editing.
  • term.js – Terminal emulator component, pulled into the Extraterm code base and heavily modified.
  • ptyw.js – PTY support for node.js.
  • … plus many other smaller libraries.

Extraterm

Extraterm is written in TypeScript. Learn TypeScript with our recommended free books and free tutorials.


Related Software

Terminal Emulators
Tabby(Terminus) Highly configurable terminal emulator, SSH and serial client
AlacrittyHardware-accelerated terminal emulator
Wave TerminalAI-native terminal built for seamless workflows
urxvtRXVT-like terminal emulator with Unicode support
KittyLike Alacritty, Kitty offers hardware acceleration
GhosttyFeature-rich and cross-platform terminal emulator
GuakeDrop-down terminal for GNOME
TerminatorMultiple GNOME terminals in one window
WezTermGPU-accelerated cross-platform terminal emulator and multiplexer
rioHardware-accelerated GPU terminal emulator
electermTerminal emulator and much more
stSimple terminal implementation for X which sucks less
contourAimed at power users with a modern feature mindset
ZuttyHigh-end terminal emulator for low-end systems
xtermProvides DEC VT102 and Tektronix 4014 compatible terminals
ExtratermSwiss army chainsaw of terminal emulators
TildaGtk based drop down terminal
PtyxisTerminal for a container-oriented desktop
MATE TerminalTerminal emulator the MATE desktop environment
HyperTerminal emulator built with web technologies
GNOME TerminalTerminal emulator for the GNOME desktop environment
footFast, lightweight and minimalistic Wayland terminal emulator
Xfce TerminalLightweight and easy to use terminal emulator application
TilixAdvanced GTK3 tiling emulator
TerminologyFast, lean and visually enhanced open source terminal emulator
KonsoleThe KDE 5 terminal emulator
Black BoxGTK 4 terminal
YakuakeDrop-down terminal emulator based on KDE Konsole technology
StationConvergent terminal emulator
SakuraVte-based terminal emulator
QTerminalLightweight Qt-based terminal emulator
ZashterminalModern, intuitive, and innovative terminal built with GTK4 and Adwaita
LazyCat TerminalBuilt with Vala and GTK4.
KerminalModern terminal emulator and SSH manager
TermyMinimal terminal emulator
DomTermTerminal emulator, REPL console, and screen multiplexer
CRTVisually expressive terminal emulator written in Rust
kermitVTE-based, simple and froggy terminal emulator
ROXTermVTE terminal emulator with tabs
LXTerminalLightweight terminal emulator based on GTK+ for the LXDE desktop
BobcatBuilt using the U++ framework and TerminalCtrl widget
forttyGPU-accelerated terminal emulator written in Fortran
TessHackable, simple, rapid and beautiful terminal
mltermMultilingual terminal emulator on X11
TermiteKeyboard-centric VTE-based terminal
PacketTerminal multiplexer and broadcast system
fingertermTerminal emulator with a custom virtual keyboard

Read our verdict in the software roundup.

Terminal Emulators Built on Web Technologies
Tabby(Terminus) Highly configurable terminal emulator, SSH and serial client
Wave TerminalAI-native terminal built for seamless workflows
electermTerminal emulator and much more
HyperBeautiful and extensible experience for command-line interface users
KerminalModern terminal emulator and SSH manager
DomTermTerminal emulator, REPL console, and screen multiplexer
TessHackable, simple, rapid and beautiful terminal
PacketTerminal multiplexer and broadcast system

Read our verdict in the software roundup.


Best Free and Open Source Software Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.

This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk.

You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more.

Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form.
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments