Zellij, a new terminal workspace and multiplexer (like
screen) written in Rust, has reached version 0.12.0, receiving a much requested feature: detachable / persistent sessions.
Compared to other terminal multiplexers, Zellij comes with a user-friendly UI with the available keyboard shortcuts displayed at the bottom, as well as auto placement of new vertical and horizontal splits, based on the available space, along with no limitations when it comes to panes resizing.
Besides this, Zellij includes a layout system and plugins written in any language that compiles to WebAssembly.
For a lot more information, check out the initial article about Zellij on Linux Uprising.
The most important feature missing in Zellij – until now – was the ability to detach active sessions and resume them later. This feature has been added with the latest Zeillij 0.12.0, released yesterday.
To detach as session, press
Ctrl + o, then press
d. You’ll then be able to list active Zellij session names using:
zellij ls #or list-sessions
To attach to an existing session, use:
zellij a <session_name> #or attach <session_name>
In case a session is already attached to a client, you won’t be able to attach it, and in that case Zellij exists with a message. You can force connect to a session, using
zellij a <session_name> -f
This will disconnect the session from the existing client and connect to the new client.
Zellij 0.12.0 also includes support for wide characters (unicode characters that take up more than one cursor cell), better terminal compatibility by handling most OSC sequences, as well as resource usage and performance improvements.
Also, since I first wrote about Zellij about a month ago, the command line tool had quite a few releases, getting a new option for using a simplified layout (set
true in the config file, or run
zellij options --simplified-ui), theme support through xrdb, and initial tmux and screen compatibility binds.
To install the Zellij binary on Linux, simply extract the downloaded archive,
cd into the folder where you’ve extracted it, then install the binary to
sudo install zellij /usr/local/bin
For configuring Zellij (keybinds, layouts, plugins), check out its documentation.