An experimental Odin terminal multiplexer inspired by i3.
e3 opens terminal panes, arranges them in an i3-style layout tree, and supports numbered workspaces, split layouts, focus movement, pane movement, resize mode, and configurable keybindings. It runs as a native SDL3 window by default, with an optional terminal/TTY renderer.
The easiest way to get the required tools and libraries is with Nix:
nix developThe development shell provides Odin, SDL3, SDL3_ttf, Fontconfig, and libvterm.
Install the dependencies with Homebrew:
brew install odin sdl3 sdl3_ttf libvtermThen source the macOS environment helper before building or running:
source scripts/macos-env.sh
odin run src
# or, for the TTY renderer:
odin run src -- --ttyWith just installed, the equivalent recipes are:
just macos-run
just macos-tty
just macos-buildmacOS uses CoreText for font.family lookup, so Fontconfig is not required. If Option/Alt keybindings conflict with your keyboard layout, set input.mod: "super" in config.yaml to use Command instead.
From the project root:
odin run srcTo use the terminal renderer instead of the default SDL3 window:
odin run src -- --ttyodin build src -out:e3
./e3Configuration is loaded from the first matching path:
./config.yaml./e3.yaml$XDG_CONFIG_HOME/e3/config.yaml~/.config/e3/config.yaml
See config.yaml for the current options, including font settings, colors, pane styling, modifier key, and keybindings.
The default modifier is Alt.
| Binding | Action |
|---|---|
Alt+q |
Quit |
Alt+d |
Split/open to the right |
Alt+Shift+d |
Split/open down |
Alt+Enter |
Open pane in the active split context |
Alt+w |
Close focused pane |
Alt+h/j/k/l |
Focus left/down/up/right |
Alt+Shift+h/j/k/l |
Move pane left/down/up/right |
Alt+r |
Enter resize mode |
Alt+1..9 |
Switch workspace |
Alt+t |
Dump layout tree to /tmp/e3-tree.log |
In resize mode, use h/l to shrink/grow width, k/j to shrink/grow height, and Enter, Esc, or Alt+r to return to normal mode.
This project is a work in progress. See plan.md and i3.md for implementation notes and i3 behavior research.