Panes and tabs, what else?
One keycombo to split, or just click, because we don't hate the mouse.
- click the middle of a border to split toward it
- drag the gap to move the boundary
- drag a pane by its title
- zoom, tab away, come back: nothing lost!
a modern terminal multiplexer written in C on top of libghostty-vt.
One keycombo to split, or just click, because we don't hate the mouse.
Detach, let the ssh connection die, come back tomorrow: every pane exactly where you left it.
Layouts (re)flow in the way you expect, nothing drifts.
One config file, hot-reloaded. Press C-a e to $EDITOR it in place.
compact true: for those who value their terminal real estate.Dim, tint, rulers, spotlights: over a pane's cells or over its
frame, with strengths computed from x, y, the
cursor, the clock.
:load shine, and a shipped preset runs light along the frameOne JSON object per line over the session's socket: the same depth the keyboard gets. An agent can hold the other end.
C-a F drops a throwaway shell on top of whatever you are doing: a monitor, a man page, a quick command.
exit closes it like any shell. the layout never
flinchedA riscv64 Linux with slosh as the thing you land in, booted right here. Nothing is installed, nothing leaves the tab, and the machine is throwaway (reload for a fresh one). Prefer a whole tab?
riscv64 · TinyEMU, compiled to wasm · yours until you reload
Prebuilt static binaries for Linux, macOS and Windows (x86-64 and ARM64) are on the latest release page. The macOS binary is signed and notarized. We also provide some packaged versions of slosh, instructions can be found below.
$ brew tap sl0p-foo/slosh
$ brew install slosh
Builds from source in under a minute; the only dependency is zig, which the formula pulls in.
# enroll the signing key, once
$ curl -fsSLO https://slosh.foo/arch/slosh.asc
$ sudo pacman-key --add slosh.asc
$ sudo pacman-key --lsign-key 0F67C909938CFFA8A76B59FD8D69B55A0E9056B9
# /etc/pacman.conf
[slosh]
Server = https://slosh.foo/arch/$arch
$ sudo pacman -Sy slosh
Built, signed packages. The fingerprint to check before
the --lsign-key: the same key is
contrib/arch/slosh.asc
in git, so the file fetched from the website can be compared against the
one in the source. The PKGBUILD, for building it yourself, is in
contrib/arch
too; the same instructions at arch/.
$ git clone https://github.com/sl0p-foo/slosh.git && cd slosh
$ make vendor # the vendored terminal core, once
$ make # about a second
$ sudo install build/slosh /usr/local/bin/
Needs zig 0.16 and
nothing else: no cmake, no autotools, no libraries. The result is one
static binary. Windows cross-compilation is
make -f Makefile.windows;
the details.
slosh is developed in the open at github.com/sl0p-foo/slosh: issues, patches and pull requests welcome.
For everything that is not an issue yet (a question, an idea, a screenshot of a setup you are proud of) there is the sl0p discord.