extraterm: a rich terminal


extraterm is a rich terminal emulator built on node.js. Taking advantage of the latest web tech, it can do stuff which conventional terminal emulators may not be able to do without complex hacks. For console newbies, extraterm surely has extra perks!

extraterm is highly colourful and can render rich content. You can use any shell in the backgroud e.g. bash, fish or zsh. extraterm comes with additional setup files which you can source for extra extraterm-specific functionality, like showing images in the console.

render image

All of these, however, come at a cost. The size of the binaries plus distributed libs is much larger than usual terminal emulators and it takes longer to load. Memory usage is higher too, as you might expect.


  • xterm compatible
  • Multiple tabs/terminals
  • Keyboard based selection
  • (Basic) vertical split
  • Show images in the terminal
  • Shell integration; can isolate and ‘frame’ command output
  • Previous command output can be used as input for new commands
  • Command output is editable in place
  • Supports Linux, Mac OS X and Cygwin on Windows
  • MIT Licensed

The project is under active development at the time of writing and promises many more features.

vertical split


Grab the latest package for your platform from the releases section on GitHub.


On Ubuntu, you need to extract the package and run:

$ ./extraterm

The behaviour at this point is just like any usual terminal emulator.
To extend extraterm, you need to source the relevant files here.

E.g., to source the fish shell related file, run:

$ . setup_extraterm_fish.fish

Leave a Reply

Your email address will not be published. Required fields are marked *