config/ — the opinionated default environment
These files are the source of truth for sl0ppij's shipped configuration.
Until this snapshot they existed only as live dotfiles in ~/.config/zellij,
versioned by hand-rolled config.kdl.pre-<thing> backups.
| file | what it is |
|---|---|
config.kdl |
"unlock-first" keybinds (Ctrl g leader), pane frames, plugin bindings, sl0p fork options |
layouts/default.kdl |
the default tab layout |
layouts/default.swap.kdl |
responsive swap layouts (stacked-pane behaviour) |
themes/gruber-darker-pop.kdl |
the default theme |
| — | the layouts require both shipped wasm plugins: zjstatus.wasm (built from sl0pstatus/) is the status bar, and pane-finder.wasm is bound in config.kdl |
themes/templeos.kdl |
alternate 16-color VGA theme |
answers.example.md |
seed for a project's .pi-answers.md (answer-picker buttons) |
Editing workflow
Edit here, then make install-config to sync into your live config dir.
Do not edit the live dotfiles directly any more — they are now a build output.
plugins/ is a trusted directory
A wasm plugin in <config dir>/plugins/ (or the data dir's plugins/) gets the
permissions it asks for without the consent prompt — that is how the shipped
pane-finder.wasm and zjstatus.wasm start silently on a fresh machine
instead of opening with a three-item "Allow? (y/n)" screen the first time you
press their keybinding.
The boundary is that directory, nothing wider: the same wasm loaded from
anywhere else still prompts, and remote (http(s):) plugins are never trusted.
The reasoning is that anything able to write into your config dir can already
bind arbitrary commands to a key in config.kdl, so a consent screen for the
wasm sitting next to it protects nothing. Do not use plugins/ as a download
folder — put a plugin you are evaluating anywhere else, and it will ask.
Rule and rationale: plugin_is_shipped_with_sl0ppi in
zellij-utils/src/input/permission.rs. Checked end to end, both halves, by
packaging/checks/plugin-permissions-live.py.
Rename status
Repointed at sl0ppij's own dirs now that the rename has landed (docs/rename.md):
file:~/.config/sl0ppij/plugins/pane-finder.wasm(config.kdl)file:~/.config/sl0ppij/plugins/zjstatus.wasm(layouts/default.kdl)- builtin plugins use the
sl0ppij:URL scheme (zellij:still parses) - comments no longer reference
~/.config/zellijor the old~/lol/zellijcheckout
Verified with sl0ppij setup --check against a staged config dir: CONFIG FILE:
Well defined.
Still assumed: theme "gruber-darker-pop" requires themes/ installed alongside.
