nicm
90cd045cf3
Clarify newlines inside {} a little.
2019-05-27 16:22:32 +00:00
Thomas Adam
d4bf4bd7c7
Merge branch 'obsd-master'
2019-05-27 15:02:28 +01:00
nicm
6b332127ca
Add an additional {} syntax for defining strings in the configuration
...
file, making it much tidier to define commands that contain other tmux
or shell commands (like if-shell). Also tweak bind-key to expect a
string if it is only given one argument, so {} can be used with it as
well. From Avi Halachmi.
2019-05-27 12:16:27 +00:00
Thomas Adam
103e44d936
Merge branch 'obsd-master'
2019-05-26 21:02:26 +01:00
nicm
e90d4a6021
Add formats for word and line under the mouse and use them to add some
...
items to the pane menu.
2019-05-26 17:34:45 +00:00
Thomas Adam
2e84d1cf03
Merge branch 'obsd-master'
2019-05-26 15:02:25 +01:00
nicm
6431005169
Add a way to append or prepend to a format if the length has been limited.
2019-05-26 12:02:42 +00:00
Thomas Adam
463bd8abb9
Merge branch 'obsd-master'
2019-05-25 18:41:51 +01:00
nicm
a65a6d62d1
Add <, >, <=, >= for formats, GitHub issue 1747.
2019-05-25 16:51:10 +00:00
Thomas Adam
75aeb733f2
Merge branch 'obsd-master'
2019-05-23 13:02:27 +01:00
nicm
723010ba72
Replace the split parser code (cfg.c and cmd-string.c) with a single
...
parser using yacc(1). This is a major change but is clearer and simpler
and allows some edge cases to be made more consistent, as well as
tidying up how aliases are handled. It will also allow some further
improvements later.
Entirely the same parser is now used for parsing the configuration file
and for string commands. This means that constructs previously only
available in .tmux.conf, such as %if, can now be used in string commands
(for example, those given to if-shell - not commands invoked from the
shell, they are still parsed by the shell itself).
The only syntax change I am aware of is that #{} outside quotes or a
comment is now considered a format and not a comment, so #{ is now a
syntax error (notably, if it is at the start of a line).
This also adds two new sections to the man page documenting the syntax
and outlining how parsing and command execution works.
Thanks to everyone who sent me test configs (they still all parse
without errors - but this doesn't mean they still work as intended!).
Thanks to Avi Halachmi for testing and man page improvements, also to
jmc@ for reviewing the man page changes.
2019-05-23 11:13:30 +00:00
Thomas Adam
3856116069
Merge branch 'obsd-master'
2019-05-21 09:02:37 +01:00
nicm
ae4cccb4f1
Fix a couple of Ta from Alphonse Mariya.
2019-05-21 07:01:14 +00:00
Thomas Adam
1eefbd28e8
Merge branch 'obsd-master'
2019-05-13 23:02:26 +01:00
nicm
1ee944a19d
Add support for overline (SGR 53), from Ricardo Banffy.
2019-05-13 20:10:23 +00:00
Thomas Adam
b5b5d35eee
Merge branch 'obsd-master'
2019-05-13 11:02:31 +01:00
nicm
c5f660e33a
Fix column width for copy mode commands.
2019-05-13 08:56:07 +00:00
Thomas Adam
50d1d04913
Merge branch 'obsd-master'
2019-05-11 09:02:29 +01:00
nicm
198b0a23a2
Don't use arguments with It and -enum, pointed out by jmc.
2019-05-11 06:40:01 +00:00
Thomas Adam
aa13bd4016
Merge branch 'obsd-master'
2019-05-10 22:10:38 +01:00
nicm
6dcca5fda4
Add support for simple menus usable with mouse or keyboard. New command
...
display-menu shows a menu (bound to the mouse on status line by default)
and a couple of extra formats for the default menus.
2019-05-10 18:04:06 +00:00
Thomas Adam
f431e20f3d
Merge branch 'obsd-master'
2019-05-09 11:02:25 +01:00
nicm
299b7289ea
Add formats to show if pane is the marked pane and if any marked pane is set.
2019-05-09 08:38:13 +00:00
Thomas Adam
3439c02e9d
Merge branch 'obsd-master'
2019-05-07 17:02:25 +01:00
schwarze
fcd0e3082b
Rename the ENVIRONMENT section which was squatting on the standard
...
manual page section and create a new ENVIRONMENT with the expected
content. Move some information that was misplaced below the -u
flag into that new section.
Feedback and OK nicm@ jmc@ tb@
2019-05-07 14:01:39 +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
Nicholas Marriott
43656d4ea7
Sync up some tmux.1 bits.
2019-05-03 17:12:30 +01:00
Thomas Adam
fff85d854e
Merge branch 'obsd-master'
2019-05-03 17:04:11 +01:00
nicm
5d9e591ae8
Fix up some bits about window-size that seem to have got lost.
2019-05-02 20:12:40 +00:00
Thomas Adam
3ab229da70
Merge branch 'obsd-master'
2019-04-28 23:02:30 +01:00
nicm
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
Thomas Adam
5489796737
Merge branch 'obsd-master'
2019-04-27 20:09:07 +01:00
nicm
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
Thomas Adam
f2c0605d6d
Merge branch 'obsd-master'
2019-04-25 17:02:37 +01:00
nicm
1677bb0dea
Need to escape ].
2019-04-25 15:35:07 +00:00
Thomas Adam
b0d7623b7e
Merge branch 'obsd-master'
2019-04-23 13:02:37 +01:00
nicm
564e44adc6
Add -no-clear variants of copy-selection and copy-pipe which do not
...
clear the selection after copying. Make copy-pipe clear the selection by
default to be consistent with copy-selection. From Avi Halachmi.
2019-04-23 09:39:07 +00:00
Thomas Adam
f980e868dd
Merge branch 'obsd-master'
2019-04-18 14:11:22 +01:00
nicm
5b9211d827
Copy the code to infer the option type to show-options and document it.
2019-04-18 12:22:07 +00:00
jmc
2219f7cc73
mark up punctuation-as-macro-args properly;
2019-04-17 16:34:35 +00:00
nicm
5943cd1907
Document that switch-client can change all of session,window,pane and
...
check for % in the target as well as ":.".
2019-04-17 14:39:37 +00:00
Thomas Adam
2546572e8e
Merge branch 'obsd-master'
2019-04-08 21:02:37 +01:00
nicm
835ccbac46
select-word was missing from the command list, from pawel-slowik.
2019-04-08 17:55:51 +00:00
Nicholas Marriott
b5b67c5386
Document that switch-client can change all of session,window,pane and check for
...
% in the target as well as ":.".
2019-04-08 10:38:50 +01:00
Thomas Adam
bfc1f0ca62
Merge branch 'obsd-master'
2019-04-02 11:02:44 +01:00
nicm
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
Thomas Adam
6ac84585e6
Merge branch 'obsd-master'
2019-03-25 20:02:38 +00:00
nicm
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
Thomas Adam
5e2150cf18
Merge branch 'obsd-master'
2019-03-25 16:00:36 +00:00
Thomas Adam
a07ad6b5a3
Merge branch 'obsd-master'
2019-03-25 15:57:47 +00:00
nicm
ff4d7d541f
Fix columns of cursor_character format in list.
2019-03-25 14:29:36 +00:00
nicm
b4a301f8fe
Clarify that styles can be space or comma separated, from Stephen Zapatka.
2019-03-22 10:45:17 +00:00
nicm
04a1fc9d36
I forgot to document resize-window, window-size and default-size;
...
reminded by okan@.
2019-03-22 09:33:04 +00:00
Thomas Adam
320237fdb8
Merge branch 'obsd-master'
2019-03-19 20:02:37 +00:00
nicm
161b57869e
Add a cursor_character format.
2019-03-19 19:01:50 +00:00
Thomas Adam
b3eebdec48
Merge branch 'obsd-master'
2019-03-19 14:02:36 +00:00
nicm
b24c9e34a9
Rename the first KEY BINDINGS section to DEFAULT KEY BINDINGS.
2019-03-19 13:35:42 +00:00
Thomas Adam
f956c17c09
Merge branch 'obsd-master'
2019-03-18 22:02:36 +00:00
Thomas Adam
962f255ee8
Merge branch 'obsd-master'
2019-03-18 21:24:49 +00:00
nicm
c62404673e
Add some bits to the STATUS LINE section about the new option.
2019-03-18 21:01:04 +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
4cbf596dc5
Merge branch 'obsd-master'
2019-03-18 15:30:55 +00:00
Thomas Adam
acb2413852
Merge branch 'obsd-master'
2019-03-18 15:07:51 +00:00
nicm
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
nicm
bd3332b211
Break description of styles into its own section.
2019-03-17 19:33:12 +00:00
nicm
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
Thomas Adam
2c755e3c55
Merge branch 'obsd-master'
2019-03-14 22:02:39 +00:00
nicm
4206bcc10e
Add format flags for start and end window.
2019-03-14 21:41:30 +00:00
nicm
38064e7593
Add T format modifier like E but also do strftime(3).
2019-03-14 21:31:43 +00:00
Thomas Adam
f33d2ab29e
Merge branch 'obsd-master'
2019-03-14 08:02:37 +00:00
nicm
1e9f8a3523
Missing space in capture-pane usage, from Ben Boeckel.
...
Also man page fixed from jmc.
2019-03-14 06:36:21 +00:00
Thomas Adam
e6fd429d58
Merge branch 'obsd-master'
2019-03-13 16:02:41 +00:00
nicm
95ab1aaaec
Add formats to list sessions, windows or panes.
2019-03-13 15:37:28 +00:00
nicm
9032ac2a05
Add E: format to expand a format twice (useful to expand the value of an
...
option).
2019-03-13 14:19:54 +00:00
Thomas Adam
c42e89a598
Merge branch 'obsd-master'
2019-02-06 08:02:37 +00:00
nicm
afd3127d89
Add -b to display-panes like run-shell, GitHub issue 1559.
2019-02-06 07:36:06 +00:00
Thomas Adam
4efba0bf9f
Merge branch 'obsd-master'
2018-11-07 10:02:39 +00:00
nicm
7339845c01
There is no reason wait-for has to be restricted to outside tmux.
2018-11-07 07:58:16 +00:00
Thomas Adam
e771f10dc6
Merge branch 'obsd-master'
2018-10-25 17:02:42 +01:00
nicm
fc41bf46ac
Add a "terminal" colour which can be used instead of "default" in style
...
options for the terminal default colour, bypassing any inheritance from
other options. Prompted by a discussion with abieber@.
2018-10-25 15:13:38 +00:00
Thomas Adam
164590e34c
Merge branch 'obsd-master'
2018-10-18 15:02:38 +01:00
nicm
9feb35b7c4
Document new refresh-client flags.
2018-10-18 13:03:45 +00:00
Thomas Adam
f44d02c7f5
Merge branch 'obsd-master'
2018-10-18 11:09:54 +01:00
nicm
a51668ca06
Support OSC 52 ? to read the top buffer inside tmux (when set-clipboard
...
is changed to on), also add refresh-client -l to ask tmux to use the
same mechanism to get the clipboard from the terminal outside
tmux. GitHub issue 1477.
2018-10-18 08:04:14 +00:00
nicm
bc0e527f32
Support for extended underline styles on terminals which offer them,
...
enabled by adding the Smulx capability with terminal-overrides (add
something like ',vte*:Smulx=\E[4\:%p1%dm'). GitHub issue 1492.
2018-10-18 07:57:57 +00:00
Nicholas Marriott
c88e945bc5
Support OSC 52 ? to read the top buffer inside tmux, also add
...
refresh-client -l to get the clipboard outside tmux. GitHub issue
1477.
2018-10-11 16:20:14 +01:00
Nicholas Marriott
4b9e76aaaa
Support for extended underline styles, enabled by adding the Smulx
...
capability with terminal-overrides (add something like
'vte*:Smulx=\E[4\:%p1%dm'). GitHub issue 1492.
2018-10-08 13:21:37 +01:00
Nicholas Marriott
ebaf54251a
Add formats for when window is larger than client, and show offset in
...
status-right by default when larger.
2018-09-26 18:41:18 +01:00
Nicholas Marriott
04c6db2d0f
Revert "Add a B flag to mark windows bigger than the client."
...
This reverts commit b4e74f4310
.
2018-09-26 16:42:29 +01:00
Nicholas Marriott
b4e74f4310
Add a B flag to mark windows bigger than the client.
2018-09-25 09:54:47 +01:00
Nicholas Marriott
59df942e09
Fixes to resize-window from Ben Boeckel.
2018-09-05 08:43:58 +01:00
Nicholas Marriott
7637518b07
Fix refresh-client flags.
2018-08-29 18:59:43 +01:00
Thomas Adam
d64daf874f
Merge branch 'obsd-master'
2018-08-26 11:02:38 +01:00
nicm
1b4402c823
Add q: format prefix to escape sh(1) special characters. Suggested by
...
someone ages ago and then more recently in GitHub issue 1449.
2018-08-26 09:28:42 +00:00
Thomas Adam
5b93f0fcd3
Merge branch 'obsd-master'
2018-08-22 23:02:43 +01:00
nicm
55db3623bf
Add StatusLeft and StatusRight mouse key modifiers for the left and
...
right parts of the status line.
2018-08-22 20:06:14 +00:00
Nicholas Marriott
bfc9fb4b3b
Add flags to refresh-client (-U -D -L -R and -c) to pan a window that
...
is larger than the client manually. Bound to S-Up, S-Down, S-Left,
S-Right and Delete manually.
Also add aliases for keys DC = Delete, IC = Insert, and make
refresh-client -C accept XxY as well as X,Y to match default-size.
2018-08-21 09:27:19 +01:00
Thomas Adam
098967a085
Merge branch 'obsd-master'
2018-08-20 17:02:39 +01:00
nicm
665f046950
Add -Z to find-window as well.
2018-08-20 15:00:42 +00:00
Nicholas Marriott
641191ab20
Support for windows larger than the client.
...
This adds two new options, window-size and default-size, and a new
command, resize-window.
The force-width and force-height options, and the session_width and
session_height formats have been removed.
The new window-size option tells tmux how to work out the size of
windows: largest means it picks the size of the largest session,
smallest the smallest session (similar to the old behaviour) and
manual means that it does not automatically resize
windows. aggressive-resize modifies the choice of session for largest
and smallest as it did before.
If a window is in a session attached to a client that is too small,
only part of the window is shown. tmux attempts to keep the cursor
visible, so the part of the window displayed is changed as the cursor
moves (with a small delay, to try and avoid excess redrawing when
applications redraw status lines or similar that are not currently
visible).
Drawing windows which are larger than the client is not as efficient
as those which fit, particularly when the cursor moves, so it is
recommended to avoid using this on slow machines or networks (set
window-size to smallest or manual).
The resize-window command can be used to resize a window manually. If
it is used, the window-size option is automatically set to manual for
the window (undo this with "setw -u window-size"). resize-window works
in a similar way to resize-pane (-U -D -L -R -x -y flags) but also has
-a and -A flags. -a sets the window to the size of the smallest client
(what it would be if window-size was smallest) and -A the largest.
For the same behaviour as force-width or force-height, use
resize-width -x or -y.
If the global window-size option is set to manual, the default-size
option is used for new windows. If -x or -y is used with new-session,
that sets the default-size option for the new session.
The maximum size of a window is 10000x10000. But expect applications
to complain and higher memory use if you make a window that big. The
minimum size is the size required for the current layout including
borders.
This change allows some code improvements, most notably that since
windows can now never be cropped, that code can be removed from the
layout code, and since panes can now never be outside the size of the
window, window_pane_visible can be removed.
2018-08-20 15:22:14 +01:00
Thomas Adam
aa32457772
Merge branch 'obsd-master'
2018-07-23 21:02:25 +01:00
kn
5c78b48cdf
Point to glob in section 7 for the actual list of special characters instead
...
the C API in section 3.
OK millert jmc nicm, "the right idea" deraadt
2018-07-23 19:02:49 +00:00
Thomas Adam
6f2698004e
Merge branch 'obsd-master'
2018-07-06 09:02:24 +01:00
nicm
28a5bc8fae
Add a rectangle_toggle format, from Hirokazu Hata.
2018-07-06 07:11:23 +00:00
Thomas Adam
20154f391e
Merge branch 'obsd-master'
2018-07-04 15:02:25 +01:00
jmc
98c4291df2
whitespace needed between macro args and punctuation;
2018-07-04 13:27:32 +00:00
nicm
cc743dc296
Add set-hook -R to run a hook immediately (useful to set multiple hooks
...
to the same thing).
2018-07-04 12:30:52 +00:00
nicm
d254293a6d
Add pane focus hooks.
2018-07-04 12:25:26 +00:00
Thomas Adam
713e0ddef3
Merge branch 'obsd-master'
2018-06-08 13:02:25 +01:00
nicm
ff45b2d343
Tweak previous - check for a NULL client and simplify manual text.
2018-06-08 09:43:58 +00:00
Thomas Adam
7de25d86e1
Merge branch 'obsd-master'
2018-06-03 13:02:31 +01:00
nicm
ba31d3a88c
Increment the lines counter when skipping a line to avoid an infinite
...
loop, and fix a check to avoid a potential out-of-bounds access. Problem
reported by Yuxiang Qin and tracked down by Karl Beldan; GitHub issue
1352.
Also a man page fix request by jmc@.
2018-06-03 10:17:30 +00:00
Thomas Adam
058d2b94dc
Merge branch 'obsd-master'
2018-05-28 15:02:31 +01:00
nicm
b602c1fb9a
Document escaping inside conditionals, from "sadie-parayno" in GitHub
...
issue 1359.
2018-05-28 11:45:26 +00:00
Thomas Adam
f0ac0d6793
Merge branch 'obsd-master'
2018-05-22 11:02:33 +01:00
nicm
2a04665626
Allow escaping , and } with # in #{}; GitHub issue 1332.
2018-05-22 08:49:12 +00:00
Thomas Adam
82c0eed36d
Merge branch 'obsd-master'
2018-05-09 19:02:35 +01:00
nicm
80994a8de1
Mention allow-rename with \033k.
2018-05-09 16:20:50 +00:00
Thomas Adam
d24bd7394d
Merge branch 'obsd-master'
2018-04-23 17:02:32 +01:00
nicm
068d1b97b2
#aabbcc will use RGB if supported so don't say it is closest match.
2018-04-23 13:51:21 +00:00
Thomas Adam
6ebd737590
Merge branch 'obsd-master'
2018-04-18 15:02:25 +01:00
nicm
e64d078a4c
Fix || example.
2018-04-18 12:50:11 +00:00
Thomas Adam
1bd66b65a3
Merge branch 'obsd-master'
2018-04-10 13:02:28 +01:00
nicm
c6975b3bb4
Add x and X to choose-tree (with a confirmation prompt) to kill an
...
item. Suggested by Matt Zagrabelny.
2018-04-10 10:48:44 +00:00
Thomas Adam
0ca9664ecf
Merge branch 'obsd-master'
2018-02-28 10:02:29 +00:00
nicm
508e2f0b3a
Add -Z flag to choose-tree, choose-client, choose-buffer to
...
automatically zoom the pane when the mode is entered and unzoom when it
exits, assuming the pane is not already zoomed. Add -Z to the default
key bindings.
2018-02-28 08:55:44 +00:00
Thomas Adam
c2aa40449c
Merge branch 'obsd-master'
2018-02-22 12:02:31 +00:00
nicm
623f4b12d3
Add exit-empty option to exit server if no sessions (defaults to on).
2018-02-22 10:54:51 +00:00
Thomas Adam
84ddc72744
Merge branch 'obsd-master'
2018-01-17 11:26:10 +00:00
nicm
5849b73b81
Add -I to pipe-pane to connect pane stdin as well as stdout, suggested
...
by Kristof Kovacs in GitHub issue 1186.
2018-01-16 09:00:38 +00:00
Thomas Adam
e19df0e869
Merge branch 'obsd-master'
2017-12-22 12:01:22 +00:00
nicm
5c82432200
Remove duplicate WheelUp/WheelDown entries in list, GitHub issue 1184.
2017-12-22 10:16:36 +00:00
Thomas Adam
5fddddbe21
Merge branch 'obsd-master'
2017-11-16 12:01:18 +00:00
nicm
e5ae9dd53d
Add -and-cancel variants for scrolling commands to exit copy mode when
...
the bottom is reached, from Stephen Hicks.
2017-11-16 11:16:15 +00:00
Thomas Adam
102df8dc80
Merge branch 'obsd-master'
2017-11-15 22:01:22 +00:00
nicm
3b649d2fcd
Add a common function for spreading out cells and use it for the two
...
even layouts and to add a -E flag to select-layout to spread out cells
evenly without changing parent cells.
2017-11-15 19:59:27 +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
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
cf782c4f54
Merge branch 'obsd-master'
2017-10-26 10:01:18 +01:00
nicm
e91e8a2a6c
Fix crash exiting command prompt (from Alex Maese in GitHub issue 1139)
...
and a man page tweak from jmc.
2017-10-26 08:17:12 +00:00
Thomas Adam
d36ac3db15
Merge branch 'obsd-master'
2017-10-25 18:01:17 +01:00
nicm
be4c01697c
Note that notifications are also hooks.
2017-10-25 15:20:10 +00:00
Thomas Adam
0072bc65e6
Merge branch 'obsd-master'
2017-10-25 16:01:22 +01:00
nicm
578a63bbc9
Default allow-rename to off because it is ridiculous that applications
...
are even able to do this and confusing when they do.
2017-10-25 14:14:52 +00:00
Thomas Adam
6b83ca0077
Merge branch 'obsd-master'
2017-10-25 14:01:26 +01:00
nicm
8dd776106d
Add P key to paste tagged in buffer mode, and trim some code that should
...
no longer be necessary.
2017-10-25 11:26:11 +00:00
Thomas Adam
ceab7154d4
Merge branch 'obsd-master'
2017-10-08 18:40:41 +01:00
nicm
0b4c408168
Fix description of history_size, from Campbell Barton.
2017-10-08 16:45:01 +00:00
Thomas Adam
f069c0ba09
Merge branch 'obsd-master'
2017-10-06 20:01:17 +01:00
nicm
9c4caf49a2
Support %else in config files to match %if, from Brad Town in GitHub
...
issue 1071.
2017-10-06 18:02:30 +00:00
Thomas Adam
d8c397d1b7
Merge branch 'obsd-master'
2017-09-11 10:01:11 +01:00
nicm
d8d6c2746e
Mention that filter is a format.
2017-09-11 06:53:06 +00:00
Thomas Adam
ff3d05d92f
Merge branch 'obsd-master'
2017-09-04 12:01:11 +01:00
nicm
eadd79acec
Move to current mouse position not last when clcking in copy mode; fixes
...
GitHub issue 1055. Also a man page fix from jmc.
2017-09-04 09:18:51 +00:00
Thomas Adam
d019821281
Merge branch 'obsd-master'
2017-09-02 20:01:18 +01:00
nicm
f4848b437f
Add selectp -T to set pane title.
2017-09-02 17:51:54 +00:00
Nicholas Marriott
fa20f19494
Fix position of -v, pointed out by Thomas Sattler.
2017-08-30 09:33:53 +01:00
Thomas Adam
3b40f8e42c
Merge branch 'obsd-master'
2017-08-23 12:01:13 +01:00
nicm
08b125194e
Key (v) and flag (-N) to toggle preview in choose modes.
2017-08-23 09:39:11 +00:00
Thomas Adam
ccdc369025
Merge branch 'obsd-master'
2017-08-20 00:01:22 +01:00
nicm
768740ae98
Fix example for user-keys.
2017-08-19 20:40:16 +00:00
Thomas Adam
07a13697e1
Merge branch 'obsd-master'
2017-08-17 12:01:17 +01:00
nicm
8daa1d5f54
Add monitor-bell window option to match the activity and silence
...
options, from Brad Town.
2017-08-17 08:37:38 +00:00
Thomas Adam
2103a09430
Merge branch 'obsd-master'
2017-08-16 14:01:15 +01:00
nicm
c6a8ad23a1
Add -d flag to display-panes to specify timeout, and make 0 mean no
...
timeout. From Laurens Post.
2017-08-16 12:12:54 +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
58744de3eb
Merge branch 'obsd-master'
2017-07-26 18:01:16 +01:00
nicm
76887b1d27
Make bell, activity and silence alerting more consistent:
...
- remove the bell-on-alert option;
- add activity-action and silence-action options with the same possible
values as the existing bell-action;
- add "both" value for the visual-bell, visual-activity and
visual-silence options to trigger both a bell and a message.
This means all three work the same way. Based on changes from Yvain Thonnart.
2017-07-26 16:14:08 +00:00
Thomas Adam
e725b96a59
Merge branch 'obsd-master'
2017-07-21 12:01:16 +01:00
nicm
11e2af6df7
Add -c for respawn-pane and respawn-window, from J Raynor.
2017-07-21 09:17:19 +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
6b1ceca86a
Merge branch 'obsd-master'
2017-07-05 00:01:10 +01:00
nicm
53d4ed22e8
< and > keys to scroll preview list left and right in tree mode.
2017-07-04 22:21:31 +00:00
Thomas Adam
f059fe3ef2
Merge branch 'obsd-master'
2017-06-30 00:01:14 +01:00
nicm
8b0fd63ddb
Use 100 as the example for command-alias because the defaults are from 0
...
to (currently) 5.
2017-06-29 22:02:19 +00:00
Thomas Adam
1ca920bbeb
Merge branch 'obsd-master'
2017-06-28 10:01:16 +01:00
nicm
1e376be13d
Fix visual-silence (check accidentally the wrong way round), from Brad
...
Town. Plus some tmux.1 fixes from jmc@.
2017-06-28 06:45:31 +00:00
Thomas Adam
6995497e5b
Merge branch 'obsd-master'
2017-06-23 18:01:11 +01:00
nicm
95ed7d48c8
Add user-keys option to allow user-defined keys to be set, from Dan
...
Aloni.
2017-06-23 15:36:52 +00:00
Thomas Adam
4dbab75855
Merge branch 'obsd-master'
2017-06-09 18:01:14 +01:00
nicm
adcd5aff6f
Extend filters (f key) to buffer and client mode and add -f flag to
...
specify to command.
2017-06-09 16:01:39 +00:00
nicm
bab4da5133
Add -O option to choose-* to set initial sort order.
2017-06-09 15:29:15 +00:00
Thomas Adam
e640907d24
Merge branch 'obsd-master'
2017-06-09 12:01:17 +01:00
nicm
74b2deae1c
Add a hook when the clipboard is set.
2017-06-09 09:21:24 +00:00
Thomas Adam
86d6666fe7
Merge branch 'obsd-master'
2017-06-07 16:01:10 +01:00
nicm
405cc337f3
Add simple searching (C-s and n) to the various choose modes: by name
...
for client and tree, and by name and content for buffer.
2017-06-07 14:37:30 +00:00
Thomas Adam
e62e17d046
Merge branch 'obsd-master'
...
Conflicts:
tmux.1
window.c
2017-06-05 11:59:38 +01:00
nicm
adf5628087
Support SIGUSR2 to stop and start logging for an existing server. Also
...
we currently only have two log levels so just use -v and -vv rather than
-v and -vvvv, and clarify the man page entry for -v.
2017-06-04 08:25:57 +00:00
nicm
184039044a
Typo/style; plus man page escaping from jmc.
2017-06-04 08:02:20 +00:00
Thomas Adam
757eb060cd
Merge branch 'obsd-master'
2017-06-03 20:01:10 +01:00
nicm
3442066054
Make set-clipboard a three-state option so tmux itself can ignore the
...
sequencess.
2017-06-03 17:43:01 +00: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
Thomas Adam
bfd7209053
Merge branch 'obsd-master'
2017-05-29 10:01:15 +01:00
nicm
15253448af
Tweak text to mention initial size, from John Hood.
2017-05-29 07:46:32 +00:00
Thomas Adam
0868512bbc
Merge branch 'obsd-master'
2017-05-10 16:01:10 +01:00
nicm
b519551153
Expand formats in option names and add -F flag to do so in option values as well.
2017-05-10 13:05:41 +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
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
Thomas Adam
742976893e
Merge branch 'obsd-master'
2015-11-29 18:01:08 +00:00
guenther
1d331c7e62
Delete a duplicated line
...
ok jmc@
2015-11-29 17:06:59 +00:00
Thomas Adam
890d8da2e3
Merge branch 'obsd-master'
...
Conflicts:
log.c
proc.c
tmux.c
2015-11-25 16:37:30 +00:00
nicm
62d3af17f9
Make environ_set va_args and use it to tidy up some calls. Also add a
...
missing word in manpage (from jmc).
2015-11-24 23:46:15 +00:00
nicm
c18fbefe93
Document socket_path format.
2015-11-24 22:27:59 +00:00
nicm
1e2df2d464
Remove the -I part of show-messages which isn't really that useful; the
...
server start time can now be accessed with a new start_time format (use:
tmux display -p '#{t:start_time}')
2015-11-24 21:52:06 +00:00
nicm
4ec61bef46
Fix usage of detach-client.
2015-11-24 20:40:51 +00:00
Thomas Adam
d63de1e407
Merge branch 'obsd-master'
...
Conflicts:
server.c
tmux.c
2015-11-23 21:20:54 +00:00
tim
4fcc02ee9d
If display-time is set to 0, show status messages until a key is pressed;
...
OK nicm@
2015-11-22 18:28:01 +00:00
Thomas Adam
7fe8edc396
Merge branch 'obsd-master'
2015-11-18 16:01:23 +00:00
nicm
5a5b950e8b
Add s/foo/bar/: prefix for formats to substitute bar for foo.
2015-11-18 14:13:55 +00:00
Thomas Adam
e2917b2627
Merge branch 'obsd-master'
2015-11-13 10:43:07 +00:00
nicm
531869bd92
Add window_visible_layout which ignores zoomed panes and use it for
...
control mode (which needs to know all panes), from George Nachman.
2015-11-13 10:00:26 +00:00
Thomas Adam
4f88344df3
Merge branch 'obsd-master'
2015-11-12 14:01:14 +00:00
jmc
1da7475d0e
tweak previous; ok nicm
2015-11-12 12:36:34 +00:00
Thomas Adam
5f483499f3
Merge branch 'obsd-master'
2015-11-12 12:01:17 +00:00
nicm
1b86f520ea
Nuke the utf8 and status-utf8 options and make tmux only a UTF-8
...
terminal. We still support non-UTF-8 terminals outside tmux, but inside
it is always UTF-8 (as when the utf8 and status-utf8 options were on).
2015-11-12 11:09:11 +00:00
nicm
a0f3999ce7
Remove the mouse_utf8_flag format as well.
2015-11-12 11:07:10 +00:00
Thomas Adam
f2e4aa8d1c
Merge branch 'obsd-master'
2015-11-12 00:01:10 +00:00
nicm
00c34df186
Drop mouse-utf8 option and always turn on UTF-8 mouse if the client says
...
it supports UTF-8.
2015-11-11 23:23:33 +00:00
Thomas Adam
da1f6fc2c8
Merge branch 'obsd-master'
...
Conflicts:
Makefile
client.c
server-client.c
server.c
tmux.c
tmux.h
2015-10-27 23:27:26 +00:00
nicm
67c3a014b9
No more TMPDIR.
2015-10-27 14:51:35 +00:00
Thomas Adam
e95df0bc39
Merge branch 'obsd-master'
2015-10-26 02:01:09 +00:00
jmc
c582f7d177
space before punctuation;
2015-10-26 00:15:37 +00:00
Thomas Adam
ca29903c82
Merge branch 'obsd-master'
2015-10-26 00:01:10 +00:00
nicm
e65306d8e7
Extend the modifiers allowed before formats: as well as the existing
...
#{=10:...} length limit, add #{t:...} to convert a time_t format to a
string, #{b:...} for basename and #{d:...} for dirname. Remove all the
foo_string time formats as they can now be replaced by "t:", for example
#{window_activity_string} becomes #{t:window_activity}.
2015-10-25 22:29:17 +00:00
Thomas Adam
4acc8d0ff5
Merge branch 'obsd-master'
...
Conflicts:
cmd-find.c
2015-10-25 09:21:37 +00:00
nicm
14da999408
Format for scroll position, from Jorge Morante.
2015-10-23 16:02:21 +00:00
Thomas Adam
0bfa615997
Merge branch 'obsd-master'
2015-10-21 16:01:08 +01:00
nicm
60ca29df64
client_key_table was missing.
2015-10-21 13:14:36 +00:00
Thomas Adam
74b958ecbe
Merge branch 'obsd-master'
...
Conflicts:
Makefile
2015-09-14 12:42:19 +01:00
nicm
901c2eb20a
Add copy-mode -e to exit copy mode when scrolling off the bottom, useful
...
for quick view of history, from Cam Hutchison.
2015-09-13 13:31:40 +00:00
Thomas Adam
1fd756066c
Merge branch 'obsd-master'
2015-09-10 12:01:08 +01:00
nicm
cfabe30bec
Add session_last_attached time and format, from Sina Siadat.
2015-09-10 08:58:14 +00:00
Thomas Adam
84eabb2658
Merge branch 'obsd-master'
2015-08-28 14:01:11 +01:00
nicm
675def0396
Remove the lock-server option which is a bit redundant, it isn't that
...
different without it.
2015-08-28 12:31:55 +00:00
Thomas Adam
6447404cc2
Merge branch 'obsd-master'
2015-08-12 12:01:09 +01:00
nicm
13b7fd82c1
Rename left/right/up/down relative to active pane to add -of suffix
...
(left-of/right-of/etc) to remove conflict with left/right meaning
leftmost or rightmost pane. From Ben Boeckel.
2015-08-12 08:55:20 +00:00
Thomas Adam
ff18787b2c
Merge branch 'obsd-master'
2015-07-27 10:01:08 +01:00
nicm
d33adc4fd0
Make -q suppress ambiguous option warnings too, from Cam Hutchison.
2015-07-27 08:45:45 +00:00
Thomas Adam
18a64ad52d
Merge branch 'obsd-master'
2015-07-20 18:01:10 +01:00
nicm
92af3766ec
Add an option (history-file) for a file to save/restore command prompt
...
history, from Olof-Joachim Frahm.
2015-07-20 15:50:04 +00:00
Thomas Adam
dedd9edf7f
Merge branch 'obsd-master'
2015-07-20 12:01:07 +01:00
nicm
d4ce210713
Correct the tsl/fsl sequence to ]0 not ]2 (from Marcel Korpel). While
...
here, Xr xterm and remove some advice about elinks that is better
elsewhere.
2015-07-20 10:34:11 +00:00
Thomas Adam
07aef38591
Merge branch 'obsd-master'
2015-07-13 18:01:09 +01:00
nicm
81069f66f9
Add a format to show if client is a control client. From Bruno Sutic.
2015-07-13 15:37:26 +00:00
Thomas Adam
38d4d69639
Merge branch 'obsd-master'
2015-07-13 16:01:09 +01:00
nicm
6308c48efd
Add a -s flag to show-environment to output Bourne shell commands a la
...
ssh-agent. Mostly from Cam Hutchison with some changes by me.
2015-07-13 13:36:29 +00:00
Thomas Adam
0ef3e28609
Merge branch 'obsd-master'
2015-06-19 02:01:10 +01:00
nicm
164ba041c9
Remove a stray : and tweak paragraph.
2015-06-18 23:53:56 +00:00
Thomas Adam
86018a3947
Merge branch 'obsd-master'
2015-06-17 22:01:13 +01:00
nicm
85120b37ea
Change break-pane to take target and source panes (-t and -s) in line
...
with other commands, from Thomas Adam.
2015-06-17 19:56:08 +00:00
Thomas Adam
21a2ccc5f1
Merge branch 'obsd-master'
2015-06-17 20:01:12 +01:00
nicm
0ff335961e
Move the shuffle code from new-window -a into a function and add a -a
...
flag for move-window too. From Thomas Adam.
2015-06-17 16:50:28 +00:00
Thomas Adam
9fdc3a069a
Merge branch 'obsd-master'
2015-06-15 14:01:09 +01:00
nicm
d96ab34019
Add window_activity format, from Thomas Adam based on a diff originally
...
from propos6 at gmail dot com.
2015-06-15 10:58:01 +00:00
Thomas Adam
37005d04a9
Merge branch 'obsd-master'
2015-06-14 12:01:10 +01:00
nicm
29c29e7717
Add a format for client PID (client_pid) and server PID (pid). Diff for
...
client_pid from Thomas Adam.
2015-06-14 10:07:44 +00:00
Thomas Adam
7acc4addb5
Merge branch 'obsd-master'
...
Conflicts:
client.c
tmux.1
tmux.c
2015-06-07 23:42:25 +01:00
nicm
c4e811e519
Add -E flag when attaching or switching client to bypass
...
update-environment, from Steven Lu.
2015-06-07 21:39:39 +00:00
nicm
4219939c10
Make it so that if a window or session target is prefixed with an =,
...
only an exact name or index match is accepted, no special character,
prefix match, or fnmatch.
2015-06-05 08:14:16 +00:00
jmc
dc0d34e137
tweak SYNOPSIS and usage();
2015-06-04 20:34:22 +00:00
Thomas Adam
83a70172a4
Merge branch 'obsd-master'
2015-06-04 16:01:07 +01:00
nicm
4a6c06d6a9
Make unsetting a global option restore it to the default. Diff lying
...
around for a while, I have forgotten who suggested it :-/.
2015-06-04 14:29:33 +00:00
Thomas Adam
02e348c069
Merge branch 'obsd-master'
2015-06-04 12:59:41 +01:00
nicm
a863834574
Add support for a single "marked pane". There is one marked pane in the
...
server at a time; it may be toggled or cleared with select-pane -m and
-M (the border is highlighted). A new target '~' or '{marked}' specifies
the marked pane to commands and it is the default target for the
swap-pane and join-pane -s flag (this makes them much simpler to use -
mark the source pane and then change to the target pane to run swapp or
joinp).
2015-06-04 11:43:51 +00:00
Nicholas Marriott
09bcbc57da
$Id$ -> $OpenBSD$.
2015-06-03 18:28:26 +01:00
Thomas Adam
beffdf6575
Merge branch 'obsd-master'
2015-05-27 16:01:22 +01:00
nicm
379400cfa6
Move the jobs output cache into the formats code so that #() work more
...
generally (for example, again working in set-titles-string).
2015-05-27 13:28:04 +00:00
Thomas Adam
00471dc783
Merge branch 'obsd-master'
2015-05-13 09:44:11 +01:00
nicm
ec34439f9c
Add a session_alerts format which is a list of all the alerts in the
...
current session in symbolic form (something like "0!,4~,5!"). Use this
in the default set-titles-string. Prompted by a request from Jan ONDREJ.
2015-05-12 15:29:29 +00:00
nicm
e958db09a7
Add bell-action "other" to pass through bells in all windows except the
...
current, suggested by Jan ONDREJ.
2015-05-12 15:27:46 +00:00
nicm
44364d7112
Remove the c0-* options which never really worked satisfactorily. Going
...
to try something else...
2015-05-11 10:10:16 +00:00
Thomas Adam
504b97b6a4
Merge branch 'obsd-master'
...
Conflicts:
tmux.h
2015-05-09 12:52:38 +01:00
nicm
c4a4bd6ac5
Move input parser structs into input.c (removing fairly useless
...
saved_cursor_[xy] formats as a side-effect).
2015-05-08 16:18:04 +00:00
Thomas Adam
f10d3675f8
Merge branch 'obsd-master'
2015-05-06 10:03:52 +01:00
nicm
31b1ab4852
Add a format window_linked which is 1 if a window has been linked
...
multiple times, also remove the default space in window_flags and use a
conditional to add it in window-status-format (this means additional
flags can be added in the option without extra spaces). From Thomas Adam
with tweaks by me.
2015-05-06 08:35:39 +00:00
Thomas Adam
c0cf4843e5
Merge branch 'obsd-master'
2015-04-29 18:42:12 +01:00
nicm
7382ba82c5
If default-terminal is set to "screen" or "screen-*", emulate screen's
...
historical (incorrect) behaviour for SGR 3 and send smso
(standout). Previously, we would send sitm (italics) if the terminal
outside had it and smso otherwise. This was acceptably until recently
because xterm's terminfo entry lacked sitm, so most users got smso.
People who want italics should set default-terminal to the forthcoming
"tmux" entry (and be prepared to deal with it being missing on older
hosts).
As a side-effect this changes default-terminal to be a server rather
than a session option.
suggested by and ok naddy
2015-04-29 15:59:08 +00:00
Thomas Adam
dc2adc6bc1
Merge branch 'obsd-master'
2015-04-28 14:57:15 +01:00
nicm
771744426e
Add select-layout -o to undo the last layout change (apply the previously
...
set layout).
2015-04-28 10:43:13 +00:00
Thomas Adam
94a8ef1cae
Merge branch 'obsd-master'
...
Conflicts:
Makefile
tmux.1
2015-04-27 21:21:55 +01:00
nicm
95195f5258
Rewrite of the target resolution internals to be simpler and more
...
consistent but with much less duplication, but keeping the same internal
API. Also adds more readable aliases for some of the special tokens used
in targets (eg "{start}" instead of "^"). Some behaviours may have
changed, for example prefix matches now happen before fnmatch.
2015-04-27 16:25:57 +00:00
Thomas Adam
0a88377086
Merge branch 'obsd-master'
2015-04-22 10:05:54 +01:00
nicm
93b2871cab
Do not die on USR1 if any of the socket parent directories are
...
missing. Reported by Robin Powell.
2015-04-21 22:32:40 +00:00
nicm
bded743706
Support for multiple key tables to commands to be bound to sequences of
...
keys. The default key bindings become the "prefix" table and -n the
"root" table. Keys may be bound in new tables with bind -T and
switch-client -T used to specify the table in which the next key should
be looked up. Based on a diff from Keith Amling.
2015-04-20 15:34:56 +00:00
Thomas Adam
b25dc423b0
Merge branch 'obsd-master'
2015-04-20 15:44:27 +01:00
jmc
8101f1ef16
tweak previous;
2015-04-19 22:10:30 +00:00
nicm
bf635e7741
Rewrite of tmux mouse support which was a mess. Instead of having
...
options for "mouse-this" and "mouse-that", mouse events may be bound as
keys and there is one option "mouse" that turns on mouse support
entirely (set -g mouse on).
See the new MOUSE SUPPORT section of the man page for description of the
key names and new flags (-t= to specify the pane or window under mouse
as a target, and send-keys -M to pass through a mouse event).
The default builtin bindings for the mouse are:
bind -n MouseDown1Pane select-pane -t=; send-keys -M
bind -n MouseDown1Status select-window -t=
bind -n MouseDrag1Pane copy-mode -M
bind -n MouseDrag1Border resize-pane -M
To get the effect of turning mode-mouse off, do:
unbind -n MouseDrag1Pane
unbind -temacs-copy MouseDrag1Pane
The old mouse options are now gone, set-option -q may be used to
suppress warnings if mixing configuration files.
2015-04-19 21:34:21 +00:00