Thomas Adam
9fd9952752
Merge branch 'obsd-master'
2018-03-08 10:02:26 +00:00
nicm
19f3a5c612
Add a missing client-detached hook when the server shuts down, and do
...
not exit until jobs started from run-shell/if-shell have finished (add a
job flags member and a flag to indicate other jobs). GitHub issue 1245.
2018-03-08 08:09:10 +00:00
Thomas Adam
5a44e18490
Merge branch 'obsd-master'
2018-02-20 12:02:23 +00:00
nicm
ab6f0bb348
Do not leak memory when working out job name in formats.
2018-02-20 10:43:46 +00:00
Thomas Adam
19afd842bf
Merge branch 'obsd-master'
2018-01-18 16:02:25 +00:00
nicm
17d4c39f24
Discard all but the last line when reading from a #() command - the
...
callback is just going to be fired again straight away to go through all
the lines, it is better just to use the last one straight away.
2018-01-18 14:28:11 +00:00
Thomas Adam
8c29f7413b
Merge branch 'obsd-master'
2017-11-02 20:01:26 +00:00
nicm
17655e5ba6
Format for group list of "other sessions" is a bit weird, just list all
...
the sessions in the group.
2017-11-02 18:52:05 +00:00
nicm
95850e1aca
Tweak previous slightly so that current session is chosen if it is in
...
the group rather than first.
2017-11-02 18:43:51 +00:00
nicm
c1f62f1fde
Only show the first member of session groups in tree mode (-G flag
...
disables).
2017-11-02 18:27:35 +00:00
Thomas Adam
31901e3c07
Merge branch 'obsd-master'
...
Conflicts:
server-fn.c
2017-10-20 12:36:29 +01:00
nicm
a5fd5782f8
Show exit status and time in the remain-on-exit pane text, mostly from
...
Timo Boettcher in GitHub issue 1103.
2017-10-12 11:32:27 +00:00
Thomas Adam
27c3852103
Merge branch 'obsd-master'
...
Conflicts:
tmux.1
2017-08-09 15:07:18 +01:00
nicm
5dd5543fe4
Add -F to choose-tree, choose-client, choose-buffer to specify the
...
format of each line, as well as adding a couple of formats needed for
the default display.
2017-08-09 11:43:45 +00:00
Thomas Adam
e7b1e05bbd
Merge branch 'obsd-master'
2017-08-02 14:01:10 +01:00
nicm
6f9b9655d7
Add selection_present format so commands in copy mode can use it, GitHub
...
issue 1028.
2017-08-02 11:10:48 +00:00
Thomas Adam
147740ed40
Merge branch 'obsd-master'
2017-07-27 14:01:13 +01:00
nicm
3df7c91f1a
Add pane_at_left/right/top/bottom formats, from Amos Bird.
2017-07-27 10:42:05 +00:00
Thomas Adam
05062e7d2d
Merge branch 'obsd-master'
2017-07-07 18:01:15 +01:00
nicm
9913cce3ba
Add a pane_pipe format to show if pipe-pane is active, GitHub issue 990.
2017-07-07 14:39:45 +00:00
Thomas Adam
73b9328c1f
Merge branch 'obsd-master'
...
Conflicts:
window-buffer.c
2017-06-01 18:29:36 +01:00
nicm
248aa54bfd
Style and spacing nits.
2017-05-31 17:56:48 +00:00
Nicholas Marriott
35008200bd
Differences to OpenBSD.
2017-05-31 16:34:39 +01:00
Nicholas Marriott
113356c848
Build fixes.
2017-05-31 16:29:07 +01:00
Thomas Adam
f17ecaa495
Merge branch 'obsd-master'
...
Conflicts:
Makefile.am
cfg.c
server-client.c
2017-05-31 15:56:13 +01:00
nicm
aad4e4ddb1
Rewrite of choose mode, both to simplify and tidy the code and to add
...
some modern features.
Now the common code is in mode-tree.c, which provides an API used by the
three modes now separated into window-{buffer,client,tree}.c. Buffer
mode shows buffers, client mode clients and tree mode a tree of
sessions, windows and panes.
Each mode has a common set of key bindings plus a few that are specific
to the mode. Other changes are:
- each mode has a preview pane: for buffers this is the buffer content
(very useful), for others it is a preview of the pane;
- items may be sorted in different ways ('O' key);
- multiple items may be tagged and an operation applied to all of them
(for example, to delete multiple buffers at once);
- in tree mode a command may be run on the selected item (session,
window, pane) or on tagged items (key ':');
- displayed items may be filtered in tree mode by using a format (this
is used to implement find-window) (key 'f');
- the custom format (-F) for the display is no longer available;
- shortcut keys change from 0-9, a-z, A-Z which was always a bit weird
with keys used for other uses to 0-9, M-a to M-z.
Now that the code is simpler, other improvements will come later.
Primary key bindings for each mode are documented under the commands in
the man page (choose-buffer, choose-client, choose-tree).
Parts written by Thomas Adam.
2017-05-30 21:44:59 +00:00
Thomas Adam
5bc5fe5e7e
Merge branch 'obsd-master'
2017-05-29 20:01:12 +01:00
nicm
a2ace9da24
Add ||, && format operators and C: to search pane content.
2017-05-29 18:06:34 +00:00
Thomas Adam
d3959a2118
Merge branch 'obsd-master'
2017-05-29 18:01:14 +01:00
nicm
1257501499
Add m: for fnmatch(3) format matching.
2017-05-29 15:43:48 +00:00
Nicholas Marriott
b74b6dc77f
Missed during merge.
2017-05-16 14:15:35 +01:00
Thomas Adam
9f9f8c8e76
Merge branch 'obsd-master'
2017-05-13 02:01:13 +01:00
nicm
f688653710
Remove an unused variable.
2017-05-12 22:43:15 +00:00
Thomas Adam
20e30593a5
Merge branch 'obsd-master'
2017-05-12 16:01:14 +01:00
nicm
5d3cf2ff15
Only redraw single client, and tweak some logging.
2017-05-12 13:27:57 +00:00
Thomas Adam
7f813dcb6a
Merge branch 'obsd-master'
2017-05-12 14:01:17 +01:00
nicm
7d3e2c83d4
Store copy mode search string in pane so search-again command works even
...
if you exit and reenter copy mode (it doesn't remember the position,
just the search string), suggested by espie@.
2017-05-12 10:45:38 +00:00
Thomas Adam
a651b08a2f
Merge branch 'obsd-master'
...
Conflicts:
format.c
2017-05-09 15:44:13 +01:00
nicm
5fee4638e0
Add a format for the name of the pane's mode, lets it be used as a
...
conditional for key bindings.
2017-05-07 22:27:57 +00:00
nicm
2fef10b9ac
Add some formats to look at the session window stack, suggested by Scott
...
ROCHFORD.
2017-05-05 11:59:47 +00:00
Thomas Adam
97ecb4f9d8
Merge branch 'obsd-master'
2017-05-03 08:01:14 +01:00
nicm
ca6a121e63
Add a format for the last search string in copy mode and fix the prompt
...
so it can work when in -I, suggested by Suraj N Kurapati.
2017-05-03 05:53:34 +00:00
Thomas Adam
e354b0e40f
Merge branch 'obsd-master'
2017-05-01 14:01:14 +01:00
nicm
0ccfb61bb0
In order that people can use formats like #D in #() in the status line
...
and not have to wait for an update when they change pane, we allow
commands to run more than once a second if the expanded form
changes. Unfortunately this can mean them being run far too often
(pretty much continually) when multiple clients exist, because some
formats (including #D) will always differ between clients.
To avoid this, give each client its own tree of jobs which means that
the same command will be different instances for each client - similar
to how we have the tag to separate commands for different panes.
GitHub issue 889; test case reported by Paul Johnson.
2017-05-01 12:20:55 +00:00
Thomas Adam
4612419c14
Merge branch 'obsd-master'
2017-04-21 16:01:18 +01:00
nicm
bba588752f
Store state shared between multiple commands in the queue in a shared
...
structure.
2017-04-21 14:01:19 +00:00
Thomas Adam
48371216df
Merge branch 'obsd-master'
2017-04-20 12:01:14 +01:00
nicm
21993105e5
Now that struct winlink has a session pointer, can remove some arguments.
2017-04-20 09:43:45 +00:00
nicm
0f25ad3ca3
There is no real need for window_printable_flags to allocate, make it
...
return a buffer from the stack.
2017-04-20 09:39:07 +00:00
nicm
0b44ad99b5
If a #() command doesn't exit, use its most recent line of output (it
...
must be a full line). Don't let it redraw the status line more than once
a second.
Requested by someone about 10 years ago...
2017-04-20 09:20:22 +00:00