How to split a tmux window into panes?
Short answer
tmux split-window -h # panes side by side (left / right)
tmux split-window -v # panes stacked (top / bottom)
From the keyboard, Ctrl-A % splits side by side and Ctrl-A " splits top and bottom.
Details
A tmux window can hold several panes, each running its own shell. split-window cuts the active
pane in two and starts a new shell in the freed half.
The flag names are the classic tmux trap. -h reads as “horizontal” but gives you a vertical
divider, so the panes end up side by side. -v gives a horizontal divider, stacking the
panes top and bottom. The flag describes the axis of the cut, not the visual orientation of the
split.
Because those flag names are easy to forget, I rebind the splits to keys that look like the result:
# ~/.tmux.conf
bind | split-window -h # | is the vertical divider: panes side by side
bind - split-window -v # - is the horizontal divider: panes stacked
Now Ctrl-A | splits side by side and Ctrl-A - stacks, with the key matching the layout. The
default % and " still work. Add -c "#{pane_current_path}" to either bind to open the new
pane in the current directory.
Verified on tmux 3.2a.
A few options worth knowing: -c "#{pane_current_path}" opens the new pane in the current pane’s
directory, -b inserts the new pane before the current one (left or top instead of right or
bottom), and -l 30 or -l 30% sets its size.
Links & references
Want to work together? Get in touch.