Zellij, a new terminal workspace and multiplexer (like tmux and 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.
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:
1
|
zellij ls #or list-sessions
|
To attach to an existing session, use:
1
|
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 --force
(-f
), e.g.:
1
|
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 simplified-ui
to true in the config file, or run zellij options --simplified-ui
), theme support through xrdb, and initial tmux and screen compatibility binds.
Download Zellij
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 /usr/local/bin
using:
1
|
sudo install zellij /usr/local/bin
|
For configuring Zellij (keybinds, layouts, plugins), check out its documentation.