CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2009/07/19 07:21:40
Modified files:
usr.bin/tmux : Makefile cmd-break-pane.c cmd-choose-window.c
cmd-down-pane.c cmd-kill-pane.c
cmd-list-windows.c cmd-next-layout.c
cmd-previous-layout.c cmd-resize-pane.c
cmd-respawn-window.c cmd-rotate-window.c
cmd-select-layout.c cmd-select-pane.c
cmd-split-window.c cmd-swap-pane.c
cmd-up-pane.c key-bindings.c layout.c resize.c
server.c tmux.1 tmux.h window.c
Added files:
usr.bin/tmux : layout-set.c
Removed files:
usr.bin/tmux : layout-manual.c
Log message:
Improved layout code.
Each window now has a tree of layout cells associated with it. In this tree,
each node is either a horizontal or vertical cell containing a list of other
cells running from left-to-right or top-to-bottom, or a leaf cell which is
associated with a pane.
The major functional changes are:
- panes may now be split arbitrarily both horizontally (splitw -h, C-b %) and
vertically (splitw -v, C-b ");
- panes may be resized both horizontally and vertically (resizep -L/-R/-U/-D,
bound to C-b left/right/up/down and C-b M-left/right/up/down);
- layouts are now applied and then may be modified by resizing or splitting
panes, rather than being fixed and reapplied when the window is resized or
panes are added;
- manual-vertical layout is no longer necessary, and active-only layout is gone
(but may return in future);
- the main-pane layouts now reduce the size of the main pane to fit all panes
if possible.
Thanks to all who tested.