Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/erickm13/Salchipapa.Dots/llms.txt

Use this file to discover all available pages before exploring further.

Zellij is the recommended terminal multiplexer in Salchipapa.Dots. Its configuration and layout files live under SalchipapaZellij/zellij/ and are symlinked to ~/.config/zellij by the installer. The setup uses a completely custom KDL keybind scheme with clear-defaults=true, a locked default mode to prevent accidental multiplexer input while typing, a zjstatus status bar with git branch and clock display, and six themed layout presets that each load a matching Solarized Osaka or community color scheme. The default shell is fish and the default layout is work_solarized_osaka.

Installation

1

Create the symlink

Link the Zellij config directory into the XDG config location:
ln -s ~/Salchipapa.Dots/SalchipapaZellij/zellij ~/.config/zellij
2

Install plugins

Place the following .wasm plugin binaries in ~/.config/zellij/plugins/:
  • zjstatus.wasm — status bar with git branch, datetime, and mode indicator
  • zellij_forgot.wasm — floating keybind reference panel (Alt+y)
3

Launch Zellij

Fish shell’s config.fish auto-starts Zellij when you open a new terminal that is not already inside a Zellij session. You can also start it manually:
zellij
Or open a specific themed layout:
zellij --layout work_solarized_osaka
All six layout presets are stored in ~/.config/zellij/layouts/. Run zellij --layout <name> (without the .kdl extension) to start with any of them: work, work_solarized_osaka, work_kanagawa, work_everforest, work_sakura, work_oldWorld.

Default Mode: Locked

config.kdl sets default_mode "locked". In locked mode all keystrokes pass directly to the running program — Zellij does not intercept any input. This prevents accidental multiplexer commands while typing in editors or interactive CLIs.
ActionKey
Enter normal mode (unlock)Ctrl+g
Return to locked modeCtrl+g (from any mode)
Quit ZellijCtrl+q (from any unlocked mode)

Keybindings

All keybinds use clear-defaults=true, meaning only the bindings listed below are active — no Zellij defaults are inherited.

Pane Mode (p from normal mode)

KeyAction
h / Focus pane left
j / Focus pane down
k / Focus pane up
l / Focus pane right
dNew pane downward, return to locked
rNew pane to the right, return to locked
nNew pane (default direction), return to locked
xClose focused pane, return to locked
fToggle fullscreen, return to locked
eEmbed or float focused pane, return to locked
wToggle all floating panes, return to locked
zToggle pane frames, return to locked
cRename pane (enter renamepane mode)
TabSwitch focus to next pane

Tab Mode (t from normal mode)

KeyAction
h / k / / Go to previous tab
j / l / / Go to next tab
19Jump directly to tab N, return to locked
nNew tab, return to locked
xClose tab, return to locked
rRename tab (enter renametab mode)
bBreak focused pane into a new tab, return to locked
[Break pane left into adjacent tab
]Break pane right into adjacent tab
TabToggle between last two tabs

Resize Mode (r from normal mode)

KeyAction
h / Increase size left
j / Increase size down
k / Increase size up
l / Increase size right
HDecrease size left
JDecrease size down
KDecrease size up
LDecrease size right
+ / =Increase pane size
-Decrease pane size

Scroll Mode (s from normal mode)

KeyAction
PageUp / h / Page scroll up
PageDown / l / Page scroll down
j / Scroll down one line
k / Scroll up one line
uHalf page scroll up
dHalf page scroll down
eOpen scrollback in nvim, return to locked
fEnter search mode
Ctrl+cScroll to bottom, return to locked

Shared Bindings (normal + locked modes)

KeyAction
Alt+yOpen zellij_forgot floating keybind reference
Alt+h / Alt+←Move focus or tab left
Alt+j / Alt+↓Move focus down
Alt+k / Alt+↑Move focus up
Alt+l / Alt+→Move focus or tab right
Alt+nNew pane
Alt+fToggle floating panes
Alt+[Previous swap layout
Alt+]Next swap layout
Alt+i / Alt+oMove tab left / right
Alt++ / Alt+=Resize increase
Alt+-Resize decrease

Available Layouts

Each layout opens with two tabs — nvim (focused) and shell — and a zjstatus status bar at the top coloured to the layout’s theme.

work.kdl

Default work layout. Uses the Rose Pine Moon palette for the status bar (soft purple/teal tones, #e0def4 foreground).

work_solarized_osaka.kdl

Default on startup. Solarized Osaka theme — deep dark #001419 background, #268bd3 active tab, #29a298 normal-mode indicator, #849900 git branch.

work_kanagawa.kdl

Kanagawa Wave theme — #7E9CD8 blues and #C34043 reds. Status bar uses #9ccfd8 for active tabs.

work_everforest.kdl

Everforest theme — muted greens (#a7c080), earthy yellows (#dbbc7f), soft reds (#e67e80).

work_sakura.kdl

Sakura theme — pink/rose tones (#c5a3a9) on a very dark background (#1c1a1c), lavender/blue accents.

work_oldWorld.kdl

Old World theme — light grey text (#C9C7CD) on pure black (#000000), with peach (#F5A191) and lavender blue (#92A2D5) accents.

Plugins

zjstatus

zjstatus.wasm replaces the default Zellij tab bar with a fully customizable status line. Each layout configures its own colors. The shared format across all layouts is:
format_left   "{mode} #[fg=<color>,bold]{session}{tabs}"
format_right  "{command_git_branch} {datetime}"
format_space  ""
  • Left: current mode indicator pill + session name + tab list
  • Right: current git branch (polled every 10 seconds via git rev-parse --abbrev-ref HEAD) + datetime (%A, %d %b %Y %H:%M, Europe/Berlin timezone)

zellij_forgot

zellij_forgot.wasm is a floating keybind cheat-sheet triggered by Alt+y from any mode. It lists every custom keybind defined in config.kdl in a scrollable floating pane, so you never need to leave the terminal to look up a shortcut.

Fish Auto-Start

The Fish shell config at SalchipapaFish/fish/config.fish automatically launches Zellij when a new terminal session starts and no Zellij session is already active. This means opening any new terminal window drops you straight into the configured multiplexer layout without any manual step.

Global Options (config.kdl)

OptionValue
default_mode"locked"
default_layout"work_solarized_osaka"
default_shell"fish"
theme"solarized_osaka"
scrollback_editor"nvim"
The following themes are defined directly in config.kdl and can be activated by changing the theme option:
Theme nameBackgroundForegroundAccent
solarized_osaka#001419#839395#268bd3
kanagawa_wave#1F1F28#DCD7BA#7E9CD8
kanagawa_dragon#282828#dcdccc#8BA4B0
everforest#282828#d3c6aa#a7c080
rose_pine_moon#191724#e0def4#9ccfd8
sakura#1c1a1c#c5a3a9#878fb9
oldWorld#000000#C9C7CD#92A2D5

Build docs developers (and LLMs) love