aboutsummaryrefslogtreecommitdiff
path: root/cmd-list-windows.c
Commit message (Collapse)AuthorAge
* Sync OpenBSD patchset 181:Tiago Cunha2009-07-28
| | | | | | | | | | | | | | | | | Make all messages sent between the client and server fixed size. This is the first of two changes to make the protocol more resilient and less sensitive to other changes in the code, particularly with commands. The client now packs argv into a buffer and sends it to the server for parsing, rather than doing it itself and sending the parsed command data. As a side-effect this also removes a lot of now-unused command marshalling code. Mixing a server without this change and a client with or vice versa will cause tmux to hang or crash, please ensure that tmux is entirely killed before upgrading.
* Sync OpenBSD patchset 142:Tiago Cunha2009-07-20
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* Having fixed flags for single-character getopt options is a bit hard toNicholas Marriott2009-07-14
| | | | | | | | | | maintain and is only going to get worse as more are used. So instead, add a new uint64_t member to cmd_entry which is a bitmask of upper and lowercase options accepted by the command. This means new single character options can be used without the need to add it explicitly to the list.
* Space trimmage mega-diff.Nicholas Marriott2009-05-04
|
* Display the layout name in window lists.Nicholas Marriott2009-04-30
|
* Better UTF-8 support, including combined characters. Unicode data is now storedNicholas Marriott2009-03-28
| | | | | | | | | | | as UTF-8 in a separate array, the code does a lookup into this every time it gets to a UTF-8 cell. Zero width characters are just appended onto the UTF-8 data for the previous cell. This also means that almost no bytes extra are wasted non-Unicode data (yay). Still some oddities, such as copy mode skips over wide characters in a strange way, and the code could do with some tidying.
* Step 2 of the Grand Plan To Make UTF-8 Better.Nicholas Marriott2009-03-28
| | | | | | | | | | | | | | | | | | | Split grid into two arrays, one containing grid attributes/flags/colours (keeps the name grid_cell for now) and a separate with the character data (called text). The text is stored as a u_short but is treated as a uint64_t elsewhere; eventually the grid will have two arrays. I'm not happy with the naming so that might change. Still need to decide where to go from here. I'm not sure whether to combine the peek/set functions together, and also whether to continue to treat the text as a uint64_t (and convert to/from Unicode) or make it a char array (of size one when UTF-8 disabled, eight when enabled) and keep everything as UTF-8. Also since UTF-8 will eventually become an attribute of the grid itself it might be nice to move all the padding crap into grid.c.
* struct grid_data -> struct grid. Stage 1 of the Grand Plan To Make UTF-8 Better.Nicholas Marriott2009-03-28
|
* Pass return code from _exec; allow command sequences to work from the ↵Nicholas Marriott2009-01-19
| | | | command line.
* Whoops, make this work properly.Nicholas Marriott2009-01-14
|
* Multiple window splitting.Nicholas Marriott2009-01-14
|
* Make the window pane code handle panes of different sizes, and add a -l and ↵Nicholas Marriott2009-01-12
| | | | -p arguments to split-window to specify the new window size in lines or as a percentage.
* Window splitting. Two vertical panes fixed 50% each. This is a huge diff, ↵Nicholas Marriott2009-01-11
| | | | still a couple of bugs (notably heap corruption somewhere causing segfault on exit).
* Trim.Nicholas Marriott2008-09-26
|
* Internal screen data rewrite for better 256 colour/UTF-8 support.Nicholas Marriott2008-09-25
|
* Initial UTF-8 support.Nicholas Marriott2008-09-09
|
* Initial 256 colour support, lightly tested.Nicholas Marriott2008-09-08
|
* Zombie windows, requested by Will Maier.Nicholas Marriott2008-06-29
|
* Big reorganisation of command-line syntax.Nicholas Marriott2008-06-05
|
* Easy bits of arg printing for list-keys.Nicholas Marriott2008-06-05
|
* If no command is specified, assume new-session.Nicholas Marriott2008-06-03
|
* Add a windowonly generic command and use it where appropriate. Also trim ↵Nicholas Marriott2008-06-02
| | | | includes and unused.
* Move -s and -c down a level so handling them is the responsibility of the ↵Nicholas Marriott2008-06-02
| | | | command (with some helper functions), rather than the top-level. This changes the action command syntax so that -s and -c must be after the command rather than before.
* Major reorganisation of screen handling.Nicholas Marriott2007-12-06
|
* Show hlimit.Nicholas Marriott2007-11-23
|
* Only show history size.Nicholas Marriott2007-11-23
|
* Don't count actual struct, don't count size twice.Nicholas Marriott2007-11-21
|
* Cut memory consumption by only allocating lines when there is actually data ↵Nicholas Marriott2007-11-21
| | | | on them, and only as much as the right-most data. Everything else is filled in at runtime.
* Initial history support.Nicholas Marriott2007-11-21
|
* Mass screen.c rename/tidy. Add a actual size (ysize) as distinct from ↵Nicholas Marriott2007-11-20
| | | | display size (now dx,dy). Move functions which work on the displayed area into screen-display.c and tidy. Use macros consistently when accessing screen data (may want to move everything about again later!). This the first step on the road to scrollback.
* Add -c option to specify client, and move detach/refresh to client rather ↵Nicholas Marriott2007-11-16
| | | | than session.
* Use ctx->client/ctx->session inline instead of temporary variables which wereNicholas Marriott2007-11-13
| | | | | being reused and causing confusion and problems.
* Make it build/run on Linux.Nicholas Marriott2007-10-31
|
* %u -> %d for indexes. Some lint fixes.Nicholas Marriott2007-10-30
|
* Reorg window data structures. Add an intermediate data type (struct winlink) ↵Nicholas Marriott2007-10-26
| | | | to hold index and make sessions hold a RB tree of them rather than a fixed array.
* Show size.Nicholas Marriott2007-10-23
|
* Lose command index enum in favour of runtime-calculated index.Nicholas Marriott2007-10-04
|
* Oops, missed this file too.Nicholas Marriott2007-10-04