slosh#
A terminal multiplexer: panes, tabs, and sessions you can detach from, written in C on top of libghostty-vt.
Install#
All platforms#
We provide binary builds for all supported platform. Get the latest slosh release binaries from our release page.
macOS#
With Homebrew:
brew tap sl0p-foo/slosh
brew install slosh
Linux#
Arch#
A pacman repository serves built, signed packages. Enroll the signing key (fingerprint 0F67C909938CFFA8A76B59FD8D69B55A0E9056B9; the same key is contrib/arch/slosh.asc in git, so the two copies can be compared):
curl -fsSLO https://slosh.foo/arch/slosh.asc
sudo pacman-key --add slosh.asc
sudo pacman-key --lsign-key 0F67C909938CFFA8A76B59FD8D69B55A0E9056B9
then, in /etc/pacman.conf:
[slosh]
Server = https://slosh.foo/arch/$arch
and pacman -Sy slosh. Details, and the PKGBUILD for building it yourself: contrib/arch/README.md in the source tree.
Source#
Build from source. That needs zig 0.16.
make vendor # build the vendored terminal core (once, a couple of minutes)
make all # a few seconds
make test # optional: the whole suite, about thirteen seconds
sudo make install
Run#
slosh # attach to session "main", creating it if needed
slosh -s work # a named session
slosh ls # what is running
Sessions keep running when you detach, or when your terminal or ssh connection goes away. Several terminals can attach at once: the last one to interact sets the shared layout size, while the others see a cursor-following crop or blank filler. Reattach with the same command.
TIP: press C-a ? for the key combo cheatsheet, or C-a p for the command palette.
Reporting issues#
You can submit issues/pull requests on our github repository.
Where to go#
- Keys: the leader, the defaults, rebinding, the palette.
- Actions: every action you can bind or run from the palette.
- Panes and tabs: splitting, moving, zooming, the mouse.
- Configuration: one file, live reload, themes,
include. - Shaders: colour passes over a pane's contents.
- Chrome shaders: the same passes over a pane's frame.
- Layouts: a session as a file you check in.
- Workspaces: projects on disk, opened by name.
- Scripting: the control socket, and what a pane can draw.