Commit Graph

2631 Commits

Author SHA1 Message Date
33298d6df6 Instead of processing keys all together, put them up on the client
command queue so they are ordered correctly with the commands that they
execute.
2019-05-03 14:51:30 +00:00
3ab229da70 Merge branch 'obsd-master' 2019-04-28 23:02:30 +01:00
c4b0da5513 Support multiple occurances of the same argument. Use this for a new
flag -e to new-window, split-window, respawn-window, respawn-pane to
pass environment variables into the newly created process. From Steffen
Christgau in GitHub issue 1697.
2019-04-28 20:05:50 +00:00
5489796737 Merge branch 'obsd-master' 2019-04-27 20:09:07 +01:00
dfb7bb6830 Merge hooks into options and make each one an array option. This allows
multiple commands to be easily bound to one hook. set-hook and
show-hooks remain but they are now variants of set-option and
show-options. show-options now has a -H flag to show hooks (by default
they are not shown).
2019-04-26 11:38:51 +00:00
7c4a2253e8 Merge branch 'obsd-master' 2019-04-25 21:02:43 +01:00
32a81e197b Make options_tostring allocate its result instead of using a stack
buffer (needed for something in the future).
2019-04-25 18:18:55 +00:00
c869366133 Merge branch 'obsd-master' 2019-04-23 23:02:42 +01:00
772b3b7a06 Indicate an array option with a flag rather than a special type so that
in future will not have to be strings.
2019-04-23 20:36:55 +00:00
78287e27c8 Break new window and pane creation common code from various commands and
window.c into a separate file spawn.c.
2019-04-17 14:37:48 +00:00
5ece386cdf Break new window and pane creation common code from various commands and
window.c into a separate file spawn.c.
2019-04-07 13:01:03 +01:00
bfc1f0ca62 Merge branch 'obsd-master' 2019-04-02 11:02:44 +01:00
7bcc0d16f2 Add an argument to copy commands to set the prefix for the buffer name,
allows buffers for different sessions to be named separately.
2019-04-02 09:03:39 +00:00
ffa4d48967 Store and restore cursor across reflow by working out a position based
on unwrapped lines, rather than a grid offset. Fixes problems reported
by Thomas Sattler and Paul de Weerd.
2019-04-02 08:45:32 +00:00
6ac84585e6 Merge branch 'obsd-master' 2019-03-25 20:02:38 +00:00
d21f8ecc13 Add StatusDefault binding for the mouse on any otherwise unassigned
parts of the status line, from Avi Halachmi.
2019-03-25 18:59:55 +00:00
0292243b29 Merge branch 'obsd-master' 2019-03-20 20:02:37 +00:00
9ee1a8f701 Improve cursor positioning after reflow by storing the position as an
offset into the entire history before reflow and restoring it aftewards.
2019-03-20 19:19:11 +00:00
073d439965 Merge branch 'obsd-master' 2019-03-19 00:02:39 +00:00
f34ebfed76 The individual -fg, -bg and -attr options have been deprecated (in
favour of -style), undocumented and hidden from show-options since
2014. Remove them, except for status-fg and status-bg.
2019-03-18 21:46:01 +00:00
962f255ee8 Merge branch 'obsd-master' 2019-03-18 21:24:49 +00:00
979313832c Extend the #[] style syntax and use that together with previous format
changes to allow the status line to be entirely configured with a single
option.

Now that it is possible to configure their content, enable the existing
code that lets the status line be multiple lines in height. The status
option can now take a value of 2, 3, 4 or 5 (as well as the previous on
or off) to configure more than one line. The new status-format array
option configures the format of each line, the default just references
the existing status-* options, although some of the more obscure status
options may be eliminated in time.

Additions to the #[] syntax are: "align" to specify alignment (left,
centre, right), "list" for the window list and "range" to configure
ranges of text for the mouse bindings.

The "align" keyword can also be used to specify alignment of entries in
tree mode and the pane status lines.
2019-03-18 20:53:33 +00:00
4cbf596dc5 Merge branch 'obsd-master' 2019-03-18 15:30:55 +00:00
acb2413852 Merge branch 'obsd-master' 2019-03-18 15:07:51 +00:00
2628af573d Add format variables for the default formats for the various modes
(tree_mode_format and so on) and add a -a flag to display-message to
list variables with values.
2019-03-18 14:10:25 +00:00
ce6be7afd4 Make array options a sparse tree instead of an array of char * and
remove the size limit.
2019-03-18 11:58:40 +00:00
b588b1729a Use a pointer for the active screen in the status line instead of
copying them around all the time.
2019-03-16 19:12:13 +00:00
b4f5b99e4b Tidy and rename some bits of status line code. 2019-03-16 17:14:07 +00:00
e8b33af780 Add a way to set individual defaults for an array option. 2019-03-15 21:54:47 +00:00
85044a634b Move status line free into its own function. 2019-03-15 14:46:58 +00:00
2d71bef0ca Remove unused member of struct client. 2019-03-15 10:48:05 +00:00
27578815da Add a -v flag to display-message to show verbose messages as the format
is parsed, this gives the user a way to debug problems with formats
rather than just being confronted with (for example) a blank status
line.
2019-03-15 10:04:13 +00:00
10d60faba5 Store the time in the format tree rather than passing it around. 2019-03-14 23:14:27 +00:00
0b32fa81b6 Merge branch 'obsd-master' 2019-03-14 12:02:41 +00:00
13f9a061ac Add a wrapper (struct style) around styles rather than using the
grid_cell directly. There will be some non-cell members soon.
2019-03-14 09:53:52 +00:00
b03f58b977 Merge branch 'obsd-master' 2019-03-13 00:02:38 +00:00
b2bc34af12 Set a flag on cells are genuinely empty (cleared and never written to)
and use tty_clear_line (which will choose the best escape sequence) to
clear any batches of cells with that flag when redrawing a line from the
stored screen.
2019-03-12 23:21:45 +00:00
400529eea0 Merge branch 'obsd-master' 2019-03-12 22:02:42 +00:00
938156d73b DECRC and DECSC apparently need to preserve origin mode as well, based
on a fix from Marc Reisner.
2019-03-12 20:02:47 +00:00
ba4a884d75 Merge branch 'obsd-master' 2019-03-12 20:02:38 +00:00
2796ae81d0 Fix HPA in origin mode. 2019-03-12 18:30:08 +00:00
162d3cb1f4 Merge branch 'obsd-master' 2019-03-12 16:02:37 +00:00
028f9d1d87 Fix resizing of control clients, should be ignored until SIZECHANGED flag set. 2019-03-12 13:56:30 +00:00
3ec05e9405 Merge branch 'obsd-master' 2019-03-12 12:02:42 +00:00
3f6bfbaf2b Allow multiple modes to be open in a pane. A stack of open modes is kept
and the previous restored when the top is exited. If a mode that is
already on the stack is entered, the existing instance is moved to the
top as the active mode rather than being opened new.
2019-03-12 11:16:49 +00:00
95d340cc4f Merge branch 'obsd-master' 2019-03-12 10:02:39 +00:00
ff4c80d53d Add support for origin mode (DECOM, SM/RM ?6), from Marc Reisner. 2019-03-12 07:39:27 +00:00
bc72cf2f52 Merge branch 'obsd-master' 2019-03-08 12:02:39 +00:00
de730f68a4 Make the mode used to view command output (a variant of copy mode) use
its own mode definition struct with a different init function rather
than calling special setup functions.
2019-03-08 10:34:20 +00:00
349aeb806a Merge branch 'obsd-master' 2019-03-07 22:02:42 +00:00