4 releases (breaking)

0.4.0 Apr 11, 2024
0.3.0 Jul 16, 2023
0.2.0 Mar 1, 2023
0.1.0 Feb 25, 2023

#167 in Configuration

MIT license

59KB
1.5K SLoC

zellij-runner

Ad-hoc replacement of Zellij session switcher (which doesn't exist yet).

screen

Installation

cargo install zellij-runner

Usage

# run switcher in interactive mode
zellij-runner

# create/connect to specified session
zellij-runner my-session

# create session with specified layout
zellij-runner my-session my-layout

To exit the runner, hit Esc on session selector screen, or Ctrl-C on any screen.

Configuration

Layouts

The runner can include layout selector when creating a new session. To activate it, set an environment variable with a path to the layouts folder:

ZELLIJ_RUNNER_LAYOUTS_DIR=.config/zellij/layouts

Banner

To show a banner, provide a path to the directory with ASCII art.

ZELLIJ_RUNNER_BANNERS_DIR=.config/zellij/banners

Each file with ASCII art must have .banner extension.

Runner would pick a random banner each time you switch sessions.

Paths autocompletion

To optimize autocompletion when switching working dir, set the following environment variables:

# directory with the projects, relative to the HOME dir
ZELLIJ_RUNNER_ROOT_DIR=Projects

# switcher already respects gitignore, but it's still useful in case there's no git
ZELLIJ_RUNNER_IGNORE_DIRS=node_modules,target

# traverse dirs 3 level max from ZELLIJ_RUNNER_ROOT_DIR
ZELLIJ_RUNNER_MAX_DIRS_DEPTH=3

Dependencies

~7–19MB
~206K SLoC