Commit Graph

559 Commits (3a741aacd108538f99239c68bfa2cd416bf0eb46)

Author SHA1 Message Date
Thomas Adam 8457f54edc Merge branch 'obsd-master' 2020-01-13 10:01:27 +00:00
nicm 04eee2410d Treat plausible but invalid keys (like C-BSpace) as literal like any
other unrecognised string passed to send-keys. Reported by Anthony
Sottile in GitHub issue 2049.
2020-01-13 07:51:54 +00:00
Thomas Adam 7922f4ee7b Merge branch 'obsd-master' 2019-12-12 14:33:47 +00:00
nicm c284ebe0ad Rewrite the code for reading and writing files. Now, if the client is
not attached, the server process asks it to open the file, similar to
how works for stdin, stdout, stderr. This makes special files like
/dev/fd/X work (used by some shells). stdin, stdout and stderr and
control mode are now just special cases of the same mechanism. This will
also make it easier to use for other commands that read files such as
source-file.
2019-12-12 11:39:56 +00:00
Nicholas Marriott e00730d149 Fix bad merge. 2019-11-28 12:30:43 +00:00
Thomas Adam 5f5f029e3b Merge branch 'obsd-master' 2019-11-28 12:18:41 +00:00
nicm 2349b1dbef Make a best effort to set xpixel and ypixel for each pane and add
formats for them.
2019-11-28 09:45:15 +00:00
Thomas Adam 57948a0dfc Merge branch 'obsd-master' 2019-10-28 10:01:25 +00:00
nicm ccdebead79 Start with empty rather than NULL window name to avoid NULL printf if
window_name is evaluated early. Reported by Mikolaj Kucharski.
2019-10-28 09:07:59 +00:00
Thomas Adam 658ecb0777 Merge branch 'obsd-master' 2019-09-11 16:48:58 +01:00
nicm 0feae4d8ae Make client exit if pane where input is going is closed. 2019-09-10 19:35:34 +00:00
Thomas Adam 4fa1f961f3 Merge branch 'obsd-master' 2019-08-28 20:02:24 +01:00
nicm df0334d3b3 The resize event was never deciding to actually resize the pane if there
was output in the pane faster than the timer would fire, so change how
it works to only defer the timer again if the pane was actually resized
within the last timer period. Reported by James Tai in GitHub issue
1880.
2019-08-28 07:34:32 +00:00
Thomas Adam ed0f2831b4 Merge branch 'obsd-master' 2019-08-15 11:02:48 +01:00
nicm 0f243f0388 Add -Z flag to rotate-window, select-pane, swap-pane, switch-client to
preserve zoomed state. GitHub issue 1839.
2019-08-14 09:58:31 +00:00
Thomas Adam abcd4bd246 Merge branch 'obsd-master' 2019-06-30 21:02:26 +01:00
nicm cf30e0f935 Do not double free window if pane fails to start. 2019-06-30 19:21:53 +00:00
Thomas Adam c4a9299956 Merge branch 'obsd-master' 2019-06-26 21:02:26 +01:00
nicm 3a6d90adad Fix a typo in window_pane_find_down (w not wp) and a missing PANE_STATUS_TOP. 2019-06-26 18:44:22 +00:00
Thomas Adam f797ac9ff6 Merge branch 'obsd-master' 2019-06-26 15:02:26 +01:00
nicm c599ad63f8 Log window and pane resizes. 2019-06-26 13:05:24 +00:00
nicm d83f356218 Add #define for the pane status line option position numbers. 2019-06-26 13:03:47 +00:00
Thomas Adam c14b0d7c00 Merge branch 'obsd-master' 2019-06-24 11:02:26 +01:00
nicm bdab595095 Trim trailing spaces when matching. 2019-06-24 08:20:02 +00:00
Thomas Adam 4a44ae06bf Merge branch 'obsd-master' 2019-06-20 17:02:26 +01:00
Thomas Adam f8ad72b2ee Merge branch 'obsd-master' 2019-06-20 15:02:26 +01:00
nicm fc1df91e03 allow-rename and alternate-screen can be pane options. 2019-06-20 13:40:22 +00:00
nicm 5f92f92908 Add a per-pane option set. Pane options inherit from window options (so
there should be no change to existing behaviour) and are set and shown
with set-option -p and show-options -p.

Change remain-on-exit and window-style/window-active-style to be pane
options (some others will be changed later).

This makes select-pane -P and -g unnecessary so no longer document them
(they still work) and no longer document set-window-option and
show-window-options in favour of set-option -w and show-options -w.
2019-06-20 11:59:59 +00:00
Thomas Adam ee9bc355f5 Merge branch 'obsd-master' 2019-06-18 13:02:28 +01:00
nicm 9272fe36e2 Add a cmdq_continue function rather than twiddling the flag directly. 2019-06-18 11:08:42 +00:00
Thomas Adam 5e9757b30b Merge branch 'obsd-master' 2019-06-14 15:51:09 +01:00
nicm 3e72e98e3b Add regular expression support for the format search, match and
substitute modifiers.
2019-06-13 19:46:00 +00:00
Thomas Adam d9ad461b5e Merge branch 'obsd-master' 2019-06-09 09:02:26 +01:00
nicm 915097d312 Exiting alternate screen mode should restore cursor position and
attributes even if already outside alternate screen mode. GitHub issue
1789.
2019-06-09 06:50:24 +00:00
Thomas Adam 41b8bb4eef Merge branch 'obsd-master' 2019-05-30 23:02:27 +01:00
nicm b26523c26d Remove a leftover abort and some fixes from cppcheck. 2019-05-30 20:54:03 +00:00
Thomas Adam d9767b8112 Merge branch 'obsd-master' 2019-05-07 13:02:27 +01:00
nicm 69440d19b7 Do not use evbuffer_add_buffer because it is destructive and doesn't
work in newer libevent.
2019-05-07 10:25:15 +00:00
Thomas Adam d4177e954c Merge branch 'obsd-master' 2019-05-03 23:02:28 +01:00
nicm 9f75635596 Allow panes to be empty (no command), output can be piped to them with
split-window or display-message -I.
2019-05-03 20:44:24 +00:00
Thomas Adam 85f09f9a4c Merge branch 'obsd-master' 2019-04-26 13:02:37 +01:00
nicm f1e14f86c4 Destroy panes before options to avoid crash when forced into a mode by a
hook.
2019-04-26 10:24:26 +00:00
nicm 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
Nicholas Marriott 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
Thomas Adam 073d439965 Merge branch 'obsd-master' 2019-03-19 00:02:39 +00:00
nicm 0406ec0ec2 Free temporary screens when writing format. 2019-03-18 21:55:04 +00:00
Thomas Adam 962f255ee8 Merge branch 'obsd-master' 2019-03-18 21:24:49 +00:00
nicm 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
Thomas Adam 1d6fe43c7b Merge branch 'obsd-master' 2019-03-18 18:02:38 +00:00
Thomas Adam 4cbf596dc5 Merge branch 'obsd-master' 2019-03-18 15:30:55 +00:00