Terminal upgrade: all-new selection and class-A Unicode support

Today we are launching a big upgrade to our terminal, based on the latest release of xterm.js (2.8), our open-source terminal library and we are super excited about it!

The terminal is one of these tools that you can't take away from a developer's everyday life, including ourselves. This is why we always strive to provide an amazing terminal experience to our customers and users.

In this release among many bug fixes and internal improvements, we have two great new features to share with you. Let's dive into them!

All-new text selection mechanism

The initial selection implementation in the terminal was nothing more than the browser's native selection. This causes several issues since it would disappear in several cases without the user's consent (e.g. when selecting text if a pip install command was running and updating the terminal with progress status).

This is not a problem anymore, as selection is now implemented and controlled completely by xterm.js, ignoring completely the browser's native selection.

This means that now selecting and copying text in the terminal behaves substantially more consistently and predictably on all platforms.

Screencast of the all new text selection

Class-A unicode support

Previously, while unicode characters were supported out-of-the-box in the terminal they could mess with the its contents and alignment. This was a result of unicode characters having varying widths, which conflicts with the fixed-width monospace fonts used in terminals.

With this new release unicode characters such as emojis and braille symbols (used by npm in npm install to display a fancy loading spinner in the terminal) are being detected and sized explicitly.

This means that from now on, when running programs using such symbols in your project's terminal, everything will be rendered flawlessly on all platforms!

That's all folks! Go now to https://www.sourcelair.com to enjoy a better and frictionless terminal experience.