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
f3221941f2
Merge branch 'obsd-master'
2017-05-04 10:01:12 +01:00
nicm
d98d316903
Some new notifications, mainly for active pane and current window and
...
session:
pane-mode-changed
window-pane-changed
client-session-changed
session-window-changed
From Joshua Brot.
2017-05-04 07:16:43 +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
99b0f48b2e
Merge branch 'obsd-master'
2017-04-28 16:01:12 +01:00
nicm
c12711affd
Default for xterm-keys was wrong, stop documenting it.
2017-04-28 13:39:59 +00:00
Thomas Adam
d8398af770
Merge branch 'obsd-master'
2017-04-22 08:01:54 +01:00
nicm
59ff9b8128
Typo in example.
2017-04-22 06:15:22 +00:00
Thomas Adam
48371216df
Merge branch 'obsd-master'
2017-04-20 12:01:14 +01: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
Thomas Adam
85af9c9c9d
Merge branch 'obsd-master'
2017-04-19 10:01:12 +01:00
nicm
fa6deb5866
When the data we have buffered to write to a terminal grows beyond a
...
reasonable amount (currently width * height * 8 bytes), discard all
output to the terminal and start trying to redraw periodically
instead. Continue with this until the amount of data we are trying to
write falls to a low level again.
This helps to prevent tmux sitting on a huge buffer of data when there
are processes with fast output running inside tmux but the outside
terminal is slow.
A new client_discarded format holds the amount of data that has been
discarded due to this mechanism.
The three variables (when to start this, when to stop, and how often to
redraw) are basically "works for me" at the moment, this is going in to
see how it goes and if it causes problems for anyone else.
2017-04-19 06:52:27 +00:00
Thomas Adam
a54309147d
Merge branch 'obsd-master'
2017-04-18 18:01:17 +01:00
nicm
fb3c5efa50
Add a format for number of bytes writtent to client, useful for debugging.
2017-04-18 15:44:17 +00:00
Thomas Adam
5f662d91db
Merge branch 'obsd-master'
...
Conflicts:
server-client.c
tmux.1
2017-04-06 11:10:17 +01:00
nicm
9b28200578
Give each client a name. This defaults to the tty name as before but
...
falls back to an alternative if the tty name is not available. This is
clearer than overloading the client ttyname member and allows us to
remove the path stored in the tty struct, it should always be the same
as the client.
2017-04-05 10:49:46 +00:00
Thomas Adam
843e605b89
Merge branch 'obsd-master'
2017-03-22 08:01:17 +00:00
nicm
df3ab87964
Add support for the strikethrough attribute (SGR 9), using the new smxx
...
terminfo capability. This means there are now nine attribute bits, so
anything above 0xff uses an extended cell.
2017-03-22 07:16:54 +00:00
Thomas Adam
631a89954f
Merge branch 'obsd-master'
2017-02-15 10:01:17 +00:00
nicm
640d9e54b7
"status bar" -> "status line" for consistency, from Benjamin Dopplinger.
2017-02-15 08:47:55 +00:00
Thomas Adam
02e04477de
Merge branch 'obsd-master'
...
Conflicts:
server.c
2017-02-14 13:55:16 +00:00
nicm
d22c15107b
Don't use a bufferevent for the tty, so we can keep better track of what
...
is being written and when.
Also a manpage typo fix from jmc@.
2017-02-10 12:59:18 +00:00
nicm
c6a3446398
Instead of numbering session groups, give them a name which may be given
...
to -t instead of a target session. Also allow them to contain only one
session.
2017-02-09 15:04:53 +00:00
nicm
8de4c15dfa
Document refresh-client -C.
2017-02-09 14:49:00 +00:00
Thomas Adam
96ad1d7779
Merge branch 'obsd-master'
2017-02-09 14:01:18 +00:00
nicm
b7ddfb39f3
Don't lie about the default size in the man page.
2017-02-09 12:00:42 +00:00
Thomas Adam
9b1f620aa0
Merge branch 'obsd-master'
2017-02-01 12:01:18 +00:00
nicm
dd0c814779
Implement "all event" (1003) mouse mode but in a way that works. The
...
main issue is that if we have two panes, A with 1002 and B with 1003, we
need to set 1003 outside tmux in order to get all the mouse events, but
then we need to suppress the ones that pane A doesn't want. This is easy
in SGR mouse mode, because buttons == 3 is only used for movement events
(for other events the trailing m/M marks a release instead), but in
normal mouse mode we can't tell so easily. So for that, look at the
previous event instead - if it is drag+release as well, then the current
event is a movement event.
2017-02-01 09:55:07 +00:00
Thomas Adam
9094f01c6b
Merge branch 'obsd-master'
2017-01-30 00:01:13 +00:00
nicm
b6099f31ea
Add -n to break-pane.
2017-01-29 22:10:55 +00:00
Thomas Adam
21d8f77a0d
Merge branch 'obsd-master'
2017-01-25 16:01:13 +00:00
nicm
0a63ab4f0f
If xterm-keys is on, use xterm(1) style keys for Home and End as well as
...
modified keys.
2017-01-25 14:24:54 +00:00
Thomas Adam
418ab1a553
Merge branch 'obsd-master'
2017-01-24 22:01:13 +00:00
nicm
4b2821ff98
Make update-environment an array as well.
2017-01-24 20:15:32 +00:00
nicm
b77dd75b57
Convert terminal-overrides to an array option.
2017-01-24 20:05:15 +00:00
nicm
16e43d6a42
Remove some lies about terminal-overrides from tmux.1.
2017-01-24 20:01:34 +00:00
nicm
85338bb75f
Add support for custom command aliases, this is an array option which
...
contains items of the form "alias=command". This is consulted when an
unknown command is parsed.
2017-01-24 19:53:37 +00:00
Thomas Adam
2311bbd28a
Merge branch 'obsd-master'
2017-01-13 12:01:12 +00:00
nicm
95950bf668
Add -E to detach-client to exec a command to replace the client instead
...
of exiting it, useful if tmux wasn't exec'd itself. From Jenna Magius.
2017-01-13 10:12:12 +00:00
Thomas Adam
d87ab0cadf
Merge branch 'obsd-master'
2017-01-11 18:01:13 +00:00
nicm
bf6a5c056d
Add a format for terminal type.
2017-01-11 16:09:57 +00:00
Thomas Adam
1e12e1d843
Merge branch 'obsd-master'
2017-01-10 12:01:10 +00:00
nicm
e78142232f
Some manpage fixes: rephrase a convoluted sentence, make the names of
...
some keys more standard, and use Ql instead of Dq.
2017-01-10 10:08:59 +00:00
Thomas Adam
628f3ad9f4
Merge branch 'obsd-master'
2017-01-10 10:01:11 +00:00
jmc
40fddfbdd6
avoid unneccessary markup; tweaked and ok nicm
2017-01-10 07:55:48 +00:00
Thomas Adam
2c862b04af
Merge branch 'obsd-master'
2017-01-09 22:01:12 +00:00
Nicholas Marriott
36619607ba
Add a format for the version.
2017-01-09 21:44:19 +00:00
nicm
d2d984647e
Add %if/%endif for conditionals when parsing configuration files, the
...
argument is a format (the new == and != are useful).
2017-01-09 21:28:56 +00:00
nicm
844f2eacf4
Add simple comparisons in formats: #{==:a,b} and #{!=:a,b} ("a" and "b"
...
are expanded so can compare formats). And expand the condition to
#{?a,b,c} (the "a" part) if it doesn't work as a simple lookup.
Also add FORMAT_NOJOBS flag to disable jobs in a format.
2017-01-09 21:03:25 +00:00
Thomas Adam
95f5d406e5
Merge branch 'obsd-master'
2017-01-09 20:01:12 +00:00
nicm
5330a2a85d
Run the source-file pattern through glob(3).
2017-01-09 19:27:00 +00:00
Thomas Adam
325c85a5c1
Merge branch 'obsd-master'
2017-01-07 18:01:11 +00:00
nicm
c05002b0f2
Add note about ccc and initc so people who want it can see it is
...
possible.
2017-01-07 15:40:23 +00:00
Thomas Adam
a3428487a7
Merge branch 'obsd-master'
2017-01-06 14:01:15 +00:00
nicm
461217d0f0
Incremental search in copy mode (on for emacs keys by default) - much
...
the same as normal searching but updates the cursor position and marked
search terms as you type. C-r and C-s in the prompt repeat the search,
once finished searching (with Enter), N and n work as before.
2017-01-06 11:57:03 +00:00
Thomas Adam
1fccfd7be5
Merge branch 'obsd-master'
2016-11-29 14:01:11 +00:00
nicm
6b46c62bb4
Make send -N work for all keys, not just in copy mode. From Artem Fokin.
2016-11-29 12:54:46 +00:00
Thomas Adam
a02d95a313
Merge branch 'obsd-master'
2016-11-24 16:01:11 +00:00
nicm
7e6c2cb238
Make the selection able to exist independent of the cursor position, so
...
that it is not affected by scrolling. If MouseDragEnd1Pane is bound to
the new "stop-selection" command:
bind -Tcopy-mode MouseDragEnd1Pane stop-selection
A selection made with the mouse will stay as it is after button 1 is
released. (It also works bound to a key.)
From Artem Fokin.
2016-11-24 13:38:44 +00:00
Thomas Adam
fe7d9af331
Merge branch 'obsd-master'
2016-11-15 12:01:18 +00:00
nicm
9fe43d6acb
Add copy-pipe-and-cancel, from Artem Fokin.
2016-11-15 09:53:23 +00:00
Thomas Adam
5f9ba2f223
Merge branch 'obsd-master'
2016-10-21 16:01:11 +01:00
nicm
8084a2c9e6
Add %%% to substitute with quotes escaped (convert " to \"). Use this
...
for the prompts in copy mode. Fixes problems with jumping to ' reported
by Theo Buehler.
2016-10-21 13:51:59 +00:00
Thomas Adam
3a6beea064
Merge branch 'obsd-master'
2016-10-18 22:01:12 +01:00
nicm
fb109ae97d
xterm-keys was in the wrong place in the list; Dilyan Palauzov.
2016-10-18 19:25:26 +00:00
Thomas Adam
d54e990c4f
Merge branch 'obsd-master'
2016-10-17 00:01:11 +01:00
nicm
41e633acf5
Use the notify name string instead of going via an enum and change
...
existing hooks to use notifys instead.
2016-10-16 22:06:40 +00:00
Thomas Adam
1a6e696b08
Merge branch 'obsd-master'
2016-10-16 22:01:14 +01:00
nicm
d15d54c2c8
Add hook_session and hook_window formats to get information on the
...
affected session or window when a hook fires. Enable session-created and
session-closed hooks now that that is available.
2016-10-16 19:55:52 +00:00
Thomas Adam
c67b702588
Merge branch 'obsd-master'
2016-10-16 20:01:10 +01:00
nicm
ddc4512d2e
Rewrite command queue handling. Each client still has a command queue,
...
but there is also now a global command queue. Instead of command queues
being dispatched on demand from wherever the command happens to be
added, they are now all dispatched from the top level server
loop. Command queues may now also include callbacks as well as commands,
and items may be inserted after the current command as well as at the end.
This all makes command queues significantly more predictable and easier
to use, and avoids the complex multiple nested command queues used by
source-file, if-shell and friends.
A mass rename of struct cmdq to a better name (cmdq_item probably) is
coming.
2016-10-16 17:55:14 +00:00
Thomas Adam
a15939b502
Merge branch 'obsd-master'
2016-10-15 14:01:10 +01:00
jmc
4fbf564292
zap double .Pp;
2016-10-15 12:34:02 +00:00
Thomas Adam
623e54788e
Merge branch 'obsd-master'
2016-10-15 02:01:12 +01:00
nicm
63b2547a02
Fire hooks on the simple notifys (window-renamed and session-renamed),
...
the complicated ones get no hooks for now (more to come).
2016-10-15 00:09:30 +00:00
Thomas Adam
33fbf82ac0
Merge branch 'obsd-master'
2016-10-14 20:01:13 +01:00
nicm
0ec18e537d
Missing flags in capture-pane, and tweak choose-tree text. From Dilyan Palauzov.
2016-10-14 17:40:47 +00:00
Thomas Adam
117737c6ca
Merge branch 'obsd-master'
2016-10-14 02:01:14 +01:00
Thomas Adam
a7ce19347a
Merge branch 'obsd-master'
2016-10-14 00:01:13 +01:00
nicm
4289a1ebfa
Trying to do hooks generically is way too complicated and unreliable and
...
confusing, particularly trying to automatically figure out what target
hooks should be using. So simplify it:
- drop before hooks entirely, they don't seem to be very useful;
- commands with special requirements now fire their own after hook (for
example, if they change session or window, or if they have -t and -s
and need to choose which one the hook uses as current target);
- commands with no special requirements can have the CMD_AFTERHOOK flag
added and they will use the -t state.
At the moment new-session, new-window, split-window fire their own hook,
and display-message uses the flag. The remaining commands still need to
be looked at.
2016-10-13 22:48:51 +00:00
nicm
7a1a01feef
Remove the set-remain-on-exit option, it was always a hack and can now
...
be done with hooks instead.
2016-10-13 21:37:03 +00:00
Thomas Adam
ad5a561adb
Merge branch 'obsd-master'
2016-10-13 22:01:12 +01:00
nicm
1bd08f903b
Remove mention of key tables than no longer exist.
2016-10-13 20:09:19 +00:00
Thomas Adam
6270392d04
Merge branch 'obsd-master'
2016-10-13 12:01:11 +01:00
nicm
05dac2e42c
-f missed from splitw usage, from Felix Rosencrantz.
2016-10-13 09:06:48 +00:00
Thomas Adam
6551f4bb3b
Merge branch 'obsd-master'
...
Conflicts:
paste.c
2016-10-13 08:09:47 +01:00
nicm
40253048ca
bind-key -c has gone, remove from man page, and unused table declarations.
2016-10-12 15:26:37 +00:00
nicm
c484c5a2a1
Drop the edit mode key tables and just use fixed key bindings for the
...
command prompt.
2016-10-12 14:50:14 +00:00
nicm
68bebe1fb7
The repeat prompt in both emacs and vi (and the old one in tmux) doesn't
...
support line editing and instead executes a command as soon as a
non-number key is pressed. Add a -N flag to command-prompt for the same
in copy mode. Reported by Theo Buehler.
2016-10-12 13:03:27 +00:00
Thomas Adam
b9dc855016
Merge branch 'obsd-master'
...
Conflicts:
format.c
osdep-openbsd.c
2016-10-12 09:45:49 +01:00
nicm
85d7afaefc
Support double and triple clicks (they are cumulative, so double is
...
fired then triple), and use for select-word and select-line in copy
mode. Inspired by a different solution from Omar Sandoval.
2016-10-11 09:30:36 +00:00
nicm
76d6d3641f
Fundamental change to how copy mode key bindings work:
...
The vi-copy and emacs-copy mode key tables are gone, and instead copy
mode commands are bound in one of two normal key tables ("copy-mode" or
"copy-mode-vi"). Keys are bound to "send-keys -X copy-mode-command". So:
bind -temacs-copy C-Up scroll-up
bind -temacs-copy -R5 WheelUpPane scroll-up
Becomes:
bind -Tcopy-mode C-Up send -X scroll-up
bind -Tcopy-mode WheelUpPane send -N5 -X scroll-up
This allows the full command parser and command set to be used - for
example, we can use the normal command prompt for searching, jumping,
and so on instead of a custom one:
bind -Tcopy-mode C-r command-prompt -p'search up' "send -X search-backward '%%'"
command-prompt also gets a -1 option to only require on key press, which
is needed for jumping.
The plan is to get rid of mode keys entirely, so more to come eventually.
2016-10-11 07:23:34 +00:00
Thomas Adam
ddfed259f6
Merge branch 'obsd-master'
2016-10-04 00:01:11 +01:00
nicm
305c832a97
Document set-hook -u.
2016-10-03 20:58:39 +00:00
Thomas Adam
a5b29a1250
Merge branch 'obsd-master'
2016-09-12 18:01:12 +01:00
nicm
2e5584c2b4
Allow repeat count to be specified in mode key tables with bind-key -R,
...
and set the default repeat count to 5 for WheelUp and WheelDown in
copy-mode.
2016-09-12 15:40:58 +00:00
Thomas Adam
f68a908c8a
Merge branch 'obsd-master'
2016-09-04 20:01:16 +01:00
nicm
fed1e384ad
Add support for performing a full width split (with splitw -f), rather
...
than splitting the current cell. From Stephen Kent.
2016-09-04 17:37:06 +00:00
Thomas Adam
88eb302221
Merge branch 'obsd-master'
2016-08-22 22:01:13 +01:00
nicm
43f292b2e0
Two minor fixes from dilyan palauzov.
2016-08-22 20:07:58 +00:00
Thomas Adam
baf1550227
Merge branch 'obsd-master'
2016-08-03 12:01:11 +01:00
nicm
f811127bb6
We only replace the first %%, not multiple (use %2 for second).
2016-08-03 09:08:40 +00:00
Thomas Adam
93f42d360b
Merge branch 'obsd-master'
2016-06-16 14:01:11 +01:00
nicm
325cbe90d9
Allow a command to be specified to display-panes, similar to
...
command-prompt, rather than always just selecting the pane.
2016-06-16 10:55:47 +00:00
Thomas Adam
1ad7c6b8f8
Merge branch 'obsd-master'
2016-06-15 18:01:11 +01:00
nicm
0c7ddae2ab
Add missing buffer_name format, from Awal Garg.
2016-06-15 14:43:06 +00:00
Thomas Adam
5c12230a08
Merge branch 'obsd-master'
2016-06-15 12:01:11 +01:00
nicm
068b8b03ad
Add -F to list-commands.
2016-06-15 08:54:11 +00:00
Thomas Adam
6cb74f4b7d
Merge branch 'obsd-master'
2016-05-12 18:01:10 +01:00
tim
fdd368a294
- Rework load_cfg() error handling a little.
...
- Add -q to source-file to suppress errors about nonexistent files.
Input and OK nicm@
2016-05-12 16:05:33 +00:00
Thomas Adam
fe4ef307b7
Merge branch 'obsd-master'
2016-05-01 14:01:12 +01:00
nicm
87be2da4e1
Missing format (window_activity_flag) and a missing Ta.
2016-05-01 11:46:12 +00:00
Thomas Adam
5849c950d0
Merge branch 'obsd-master'
2016-04-30 00:01:10 +01:00
jmc
0c7895076e
tweak previous;
2016-04-29 20:57:10 +00:00
Thomas Adam
55d472a9fe
Merge branch 'obsd-master'
2016-04-29 18:01:09 +01:00
nicm
eb8e76d433
Compact a small table into text.
2016-04-29 15:58:52 +00:00
Thomas Adam
ba9f32b464
Merge branch 'obsd-master'
2016-04-29 16:01:12 +01:00
nicm
0509be0740
Add option to include status text in the pane borders. If
...
pane-border-status is set to "top" or "bottom" (rather than "off"),
every pane has a permanent top or bottom border containing the text from
pane-border-format.
Based on a diff sent long ago by Jonathan Slenders, mostly rewritten and
simplified by me.
2016-04-29 15:00:48 +00:00
nicm
0d84fdd953
Final parts of command hooks, add before- and after- hooks to each command.
2016-04-29 14:05:24 +00:00
Thomas Adam
55fdaab365
Merge branch 'obsd-master'
2016-04-27 12:01:10 +01:00
nicm
1cedf78284
Add next/previous paragraph, from J Raynor.
2016-04-27 09:39:09 +00:00
Thomas Adam
ed598e9fe1
Merge branch 'obsd-master'
2016-03-18 08:01:18 +00:00
nicm
fa97b0a95b
Instead of reusing MouseUp at the finish of a drag, add a new key
...
MouseDragEnd. It can be useful to bind them separately in copy mode.
2016-03-18 07:28:27 +00:00
Thomas Adam
e304673c65
Merge branch 'obsd-master'
...
Conflicts:
utf8.c
2016-03-02 18:10:51 +00:00
nicm
c7851e0ee7
Fix break-pane synopsis and some other tmux.1 bits.
2016-03-01 11:58:45 +00:00
Thomas Adam
5fce21728e
Merge branch 'obsd-master'
2016-01-31 12:01:09 +00:00
nicm
8028560f82
Support negative trim values (#{=-10:pane_title}) to trim from the end,
...
suggested by Kevin Brubeck Unhammer.
2016-01-31 09:54:46 +00:00
Thomas Adam
8cf1504ba6
Merge branch 'obsd-master'
2016-01-29 12:01:16 +00:00
nicm
427b820426
Support for RGB colour, using the extended cell mechanism to avoid
...
wasting unnecessary space. The 'Tc' flag must be set in the external
TERM entry (using terminal-overrides or a custom terminfo entry), if not
tmux will map to the closest of the 256 or 16 colour palettes.
Mostly from Suraj N Kurapati, based on a diff originally by someone else.
2016-01-29 11:13:56 +00:00
Thomas Adam
dc42c35f1f
Merge branch 'obsd-master'
2016-01-19 18:01:15 +00:00
nicm
995af0e2b7
I no longer use my SourceForge address so replace it.
2016-01-19 15:59:12 +00:00
Thomas Adam
5d21faa99c
Merge branch 'obsd-master'
2016-01-16 02:01:10 +00:00
nicm
c9815307eb
Add hooks for alerts (bell, silence, activity), from Thomas Adam.
2016-01-16 00:36:53 +00:00
Thomas Adam
e0cae08c04
Merge branch 'obsd-master'
2015-12-17 00:01:08 +00:00
nicm
021c64310d
Add infrastructure to work out the best target given a pane or window
...
alone and use it to add pane_died and pane_exited hooks.
2015-12-16 21:50:37 +00:00
Thomas Adam
845a664bb2
Merge branch 'obsd-master'
2015-12-12 20:01:15 +00:00
nicm
5ed17e84fa
Add key-table option to set the default key table for a session, allows
...
different key bindings for different sessions and a few other things.
2015-12-12 18:32:24 +00:00
nicm
39cf9c9d31
Allow prefix and prefix2 to be set to None to disable (useful if you
...
would rather bind the prefix in the root table).
2015-12-12 18:19:00 +00:00
Thomas Adam
2a6b215328
Merge branch 'obsd-master'
2015-12-11 18:01:11 +00:00
nicm
f2be3ad46f
Mention {src,dst}-{window,pane} where we define target-{window,pane}.
2015-12-11 16:27:01 +00:00
Thomas Adam
4909a70174
Merge branch 'obsd-master'
2015-12-11 13:24:45 +00:00
nicm
01831da5f5
Add cmdq as an argument to format_create and add a format for the
...
command name (will also be used for more later).
2015-12-11 12:27:36 +00:00
Thomas Adam
3182728b70
Merge branch 'obsd-master'
2015-12-08 07:12:13 +00:00
Thomas Adam
5862f59ed7
Conflicts:
...
Makefile
2015-12-08 07:11:09 +00:00
jmc
1f94274b92
Ed was meant to be El;
2015-12-08 06:42:07 +00:00
nicm
d2fb0efcd1
Add hooks infrastructure, basic commands (set-hook, show-hooks) and a
...
couple of not very useful client hooks. This will eventually let
commands be run at various points and on notifications. Joint work with
Thomas Adam.
2015-12-08 01:10:31 +00:00
Nicholas Marriott
98994a8bb1
termios(4)
2015-12-08 00:49:10 +00:00
Nicholas Marriott
b580a55191
pty(7) -> pty(4)
2015-12-08 00:48:22 +00:00
Nicholas Marriott
ff16836d1d
pty is in section 4
2015-12-08 00:47:27 +00:00