tmux Splits the Terminal into Panes: A Tree, Not a Geometry Problem
The hard part of tmux’s pane splitting isn’t the geometry — it’s serialisability.
The hard part of tmux’s pane splitting isn’t the geometry — it’s serialisability.
ncurses assumes one application owns one terminal. A multiplexer owns N screens and has to render them into one terminal without the terminal knowing.
A pane isn’t a picture of a terminal — it’s a real pty with a real process behind it, in its own session.
tmux is a daemon that owns real ptys plus thin clients that connect over a UNIX socket.