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
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
jmc
4fbf564292
zap double .Pp;
2016-10-15 12:34:02 +00: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
nicm
0ec18e537d
Missing flags in capture-pane, and tweak choose-tree text. From Dilyan Palauzov.
2016-10-14 17:40:47 +00: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
nicm
1bd08f903b
Remove mention of key tables than no longer exist.
2016-10-13 20:09:19 +00:00
nicm
05dac2e42c
-f missed from splitw usage, from Felix Rosencrantz.
2016-10-13 09:06:48 +00: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
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
nicm
305c832a97
Document set-hook -u.
2016-10-03 20:58:39 +00: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
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
nicm
43f292b2e0
Two minor fixes from dilyan palauzov.
2016-08-22 20:07:58 +00:00
nicm
f811127bb6
We only replace the first %%, not multiple (use %2 for second).
2016-08-03 09:08:40 +00: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
nicm
0c7ddae2ab
Add missing buffer_name format, from Awal Garg.
2016-06-15 14:43:06 +00:00
nicm
068b8b03ad
Add -F to list-commands.
2016-06-15 08:54:11 +00: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
nicm
87be2da4e1
Missing format (window_activity_flag) and a missing Ta.
2016-05-01 11:46:12 +00:00
jmc
0c7895076e
tweak previous;
2016-04-29 20:57:10 +00:00
nicm
eb8e76d433
Compact a small table into text.
2016-04-29 15:58:52 +00: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
nicm
1cedf78284
Add next/previous paragraph, from J Raynor.
2016-04-27 09:39:09 +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
nicm
c7851e0ee7
Fix break-pane synopsis and some other tmux.1 bits.
2016-03-01 11:58:45 +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
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
nicm
995af0e2b7
I no longer use my SourceForge address so replace it.
2016-01-19 15:59:12 +00:00
nicm
c9815307eb
Add hooks for alerts (bell, silence, activity), from Thomas Adam.
2016-01-16 00:36:53 +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
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
nicm
f2be3ad46f
Mention {src,dst}-{window,pane} where we define target-{window,pane}.
2015-12-11 16:27:01 +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
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
guenther
1d331c7e62
Delete a duplicated line
...
ok jmc@
2015-11-29 17:06:59 +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
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
nicm
5a5b950e8b
Add s/foo/bar/: prefix for formats to substitute bar for foo.
2015-11-18 14:13:55 +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
jmc
1da7475d0e
tweak previous; ok nicm
2015-11-12 12:36:34 +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
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
nicm
67c3a014b9
No more TMPDIR.
2015-10-27 14:51:35 +00:00
jmc
c582f7d177
space before punctuation;
2015-10-26 00:15:37 +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
nicm
14da999408
Format for scroll position, from Jorge Morante.
2015-10-23 16:02:21 +00:00
nicm
60ca29df64
client_key_table was missing.
2015-10-21 13:14:36 +00: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
nicm
cfabe30bec
Add session_last_attached time and format, from Sina Siadat.
2015-09-10 08:58:14 +00: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
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
nicm
d33adc4fd0
Make -q suppress ambiguous option warnings too, from Cam Hutchison.
2015-07-27 08:45:45 +00: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
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
nicm
81069f66f9
Add a format to show if client is a control client. From Bruno Sutic.
2015-07-13 15:37:26 +00: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
nicm
164ba041c9
Remove a stray : and tweak paragraph.
2015-06-18 23:53:56 +00: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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
nicm
ee123c2489
Support setting the default window and pane background colours (window
...
and active pane via window-style and window-active-style options, an
individual pane by a new select-pane -P flag). From J Raynor.
2015-04-19 21:05:27 +00:00
nicm
0cd55eb1e7
Add a -x flag to copy-selection, append-selection and start-named-buffer
...
to prevent it exiting copy mode after copying. From J Raynor with a few
tweaks by me.
2015-04-10 16:00:08 +00:00
nicm
009a5e4213
in the case -> in this case.
2015-04-10 07:23:14 +00:00
nicm
3aa72b42b2
Add a helper function to convert time, and add session_activity formats
...
(the latter from Takatoshi Matsumoto).
2015-03-31 17:58:36 +00:00
nicm
cd9ccbc1e9
set-titles-string now uses formats, not the status bits (so no #() for
...
now). Reported by landry.
2015-03-11 08:17:37 +00:00
nicm
83a8e1fd20
Move pane border options to window options rather than session, from Marc Finet.
2015-02-06 15:09:34 +00:00
nicm
be0ad01b7c
Add missing default bindings, from Theo Buehler.
2015-01-06 09:12:02 +00:00
nicm
7a0c94b28a
Add pane_dead_status for exit status of dead panes.
2014-12-09 19:23:35 +00:00
nicm
54ca7b230d
Add -F to if-shell to allow it to be used to check for format or option
...
values rather than executing a command.
2014-12-02 23:39:02 +00:00
nicm
575fd1e322
Permit option values to be used in formats.
2014-12-02 23:19:45 +00:00
nicm
d37f266524
Add -b to splitw like joinw, from Felix Rosencrantz.
2014-11-12 22:57:06 +00:00
nicm
3c12b477d3
V should be vi not emacs, also sort. From Theo Buehler.
2014-11-07 12:28:28 +00:00
nicm
e4bf1e5128
Add V for select line with vi(1) keys. From Juho Pohjala.
2014-11-06 09:17:25 +00:00
nicm
d24c9d7d3e
Do not put a space between status-left/status-right and the window list,
...
instead move the space into the defaults for the options (so status-left
now defaults to "[#S] ". From Balazs Kezes.
2014-11-05 23:15:11 +00:00
nicm
428b51e031
Add pane_input_off format, from Anish R Athalye.
2014-10-25 08:47:04 +00:00
nicm
f0b69c7711
Fix description of Ss and Se.
2014-10-18 20:28:19 +00:00
nicm
6610e89689
Top function key is F12 now.
2014-10-02 14:21:06 +00:00
nicm
304f86cdbb
Support ! for last pane.
2014-09-25 12:45:35 +00:00
nicm
9bda7e881a
Add window_last_flag and window_zoomed_flag. From John Morrissey.
2014-09-08 14:29:05 +00:00
nicm
8a473b5757
Fix typo (paneas -> panes).
2014-09-01 22:00:42 +00:00
nicm
f518a077b1
Add flags to selectp to enable and disable input to a pane, from Anish
...
Athalye.
2014-08-11 22:14:30 +00:00
nicm
c8efffb4db
Make -S- and -E- mean the start and end to capture-pane to avoid having
...
to faff around with huge numbers to get everything.
2014-06-20 10:46:59 +00:00
nicm
7160b8c2d5
Add some formats for pane bounds.
2014-05-27 12:49:36 +00:00
nicm
191f695bad
Change key-table to mode-table to allow for some future work. From Keith
...
Amling.
2014-05-14 06:45:35 +00:00
nicm
b3e8d440ed
If multiple arguments are given to new-session, new-window,
...
split-window, respawn-window or respawn-pane, pass them directly to
execvp() to help avoid quoting problems. One argument still goes to "sh
-c" like before. Requested by many over the years. Patch from J Raynor.
2014-05-13 08:08:32 +00:00
nicm
b1a06ef22e
Add a copy mode key binding to copy to a named buffer. From J Raynor.
2014-05-13 07:54:20 +00:00
nicm
3dbacbb62b
Add support for named buffers. If you don't name a buffer, things work
...
much as before - buffers are automatically named "buffer0000",
"buffer0001" and so on and ordered as a stack. Buffers can be named
explicitly when creating ("loadb -b foo" etc) or renamed ("setb -b
buffer0000 -n foo"). If buffers are named explicitly, they are not
deleted when buffer-limit is reached. Diff from J Raynor.
2014-05-13 07:34:35 +00:00
nicm
64613b9d41
#nnT went away a while ago, remove a leftover from the manpage.
2014-04-17 15:48:02 +00:00
nicm
2740490e27
Remove the "info" message mechanism, this was only used for about five
...
mostly useless and annoying messages. Change those commands to silence
on success like all the others. Still accept the -q command line flag
and "quiet" server option for now.
2014-04-17 07:55:43 +00:00
nicm
877bdb46ed
Extend the -q flag to set-option to suppress errors about unknown
...
options - this will allow options to be removed more easily.
2014-04-17 07:51:38 +00:00
nicm
992ef70fb6
Remove the monitor-content option and associated bits and bobs. It's
...
never worked very well. If there is a big demand for it to return, will
consider better ways to do it.
2014-04-17 07:36:45 +00:00
nicm
14a96df9ee
Remove the choose-list command to prepare for some later choose-* work.
2014-04-16 21:02:41 +00:00
nicm
252a7373d6
Support UTF-8 with choose-buffer, from Kosuke ASAMI. Also make
...
buffer_sample bigger to let it trim at window right edge.
2014-04-02 18:12:18 +00:00
nicm
b52b40b2bc
pane_start_path has gone away.
2014-04-02 07:55:09 +00:00
nicm
dca7d1c0fd
Make message-limit a server option.
2014-03-31 21:41:35 +00:00
nicm
0e4d1d8493
Add setb -a to append and a copy mode append command, from J Raynor with
...
minor changes.
2014-03-31 21:39:31 +00:00
nicm
b11de5adc7
Make session_attached a count and add session_many_attached flag.
2014-03-31 21:37:55 +00:00
nicm
f1828921df
Change terminal-overrides to a server option (now that we have them), it
...
doesn't make much sense as a session option.
2014-02-23 00:53:06 +00:00
nicm
81db6bab91
Leftovers from removing 88 colour support, from Theo Buehler.
2014-02-16 12:45:17 +00:00
jmc
973de5a704
fix some minor formatting glitches;
2014-02-02 08:48:48 +00:00
nicm
945339b443
Allow replacing each of the many sets of separate foo-{fg,bg,attr}
...
options with a single foo-style option. For example:
set -g status-fg yellow
set -g status-bg red
set -g status-attr blink
Becomes:
set -g status-style fg=yellow,bg=red,blink
The -a flag to set can be used to add to rather than replace a style. So:
set -g status-bg red
Becomes:
set -ag status-style bg=red
Currently this is fully backwards compatible (all *-{fg,bg,attr} options
remain) but the plan is to deprecate them over time.
From Tiago Cunha.
2014-01-28 23:07:09 +00:00
nicm
d23561f381
Merge server-info into show-messages and remove some not useful output.
2014-01-22 14:43:42 +00:00
nicm
1286c56188
Replace ## by # in format.
2013-11-24 11:29:09 +00:00
nicm
7fa55b0419
Key to swap to other end of selection (bound to o with vi keys), from J
...
Raynor.
2013-10-23 11:31:03 +00:00
nicm
17ec688ced
Bracket in the wrong place in description of c0-change-trigger.
2013-10-10 23:31:28 +00:00
nicm
d0566a474a
Remove the KERN_PROC_CWD the proc_current_path format (which is the only
...
thing that uses it now).
2013-10-10 12:39:24 +00:00
nicm
282c5f9644
Alter how tmux handles the working directory to internally use file
...
descriptors rather than strings.
- Each session still has a current working directory.
- New sessions still get their working directory from the client that
created them or its attached session if any.
- New windows are created by default in the session working directory.
- The -c flag to new, neww, splitw allows the working directory to be
overridden.
- The -c flag to attach let's the session working directory be changed.
- The default-path option has been removed.
To get the equivalent to default-path '.', do:
bind c neww -c $PWD
To get the equivalent of default-path '~', do:
bind c neww -c ~
This also changes the client identify protocol to be a set of messages rather
than one as well as some other changes that should make it easier to make
backwards-compatible protocol changes in future.
2013-10-10 12:26:34 +00:00
nicm
b822d24b15
Support -c for new-session, based on code from J Raynor.
2013-10-10 12:07:36 +00:00
nicm
40811eb8d4
Add length limit operator for formats.
2013-10-10 11:50:20 +00:00
nicm
d75dd2ab1c
Add formats for window flags.
2013-10-10 11:47:52 +00:00
nicm
7c71c3e27d
Change the default for the default-path option to ~. This is a quick
...
change to turn off the KERN_PROC_CWD code which is unpredictable. Later
it will go away and there may be other changes to how this works.
2013-10-05 13:56:48 +00:00
schwarze
304ea079d2
use .Mt for email addresses; from Jan Stary <hans at stare dot cz>; ok jmc@
2013-07-16 00:07:52 +00:00
Nicholas Marriott
f5b041e394
Add pane_synchronized format, from Romain Francoise.
2013-07-05 15:27:14 +00:00
Nicholas Marriott
3977dba761
Focus events can cause trouble if left on and they can't be turned off
...
during idle periods (like the other states are) because we'd miss
events. So add a server option to control them. Defaults to off.
2013-06-23 13:10:46 +00:00
Jason McIntyre
ddb52a2b15
escape "Ss", becuase groff thinks it has found a macro;
2013-06-02 14:40:17 +00:00
Nicholas Marriott
13441e8cb8
The actual terminfo entries we ended up with for cursor changes are Cs,
...
Ce, Ss and Se (not Cc, Ce, Cs, Csr). So use and document these instead
of the ones we were using earlier.
2013-06-02 07:52:15 +00:00
Nicholas Marriott
c231381aa3
Demote the old single-character replacement variables (#S and friends)
...
to aliases of formats. From Tiago Cunha.
2013-05-31 19:56:05 +00:00
Nicholas Marriott
c30d60f7ae
Add host_short format, from Tiago Cunha.
2013-05-31 19:46:42 +00:00
Nicholas Marriott
2555ac58cc
.Op Fl b not .Fl b for run-shell synopsis, from Ben Boeckel.
2013-04-24 10:15:47 +00:00
Nicholas Marriott
20f0d917be
Missed -o from set-window-option, from Ben Boeckel.
2013-04-10 12:07:18 +00:00
Nicholas Marriott
7f63658709
Add TMUX_TMPDIR variable to put the socket directory outside
...
TMPDIR. From Ben Boeckel.
2013-03-27 11:24:18 +00:00
Nicholas Marriott
e44bd9f750
Revert the command-prefix change which breaks sequences of commands.
2013-03-25 15:59:57 +00:00
Nicholas Marriott
4119c476aa
b comes before t.
2013-03-25 11:46:28 +00:00
Nicholas Marriott
6fee3e9e4b
Rename session idx to session id throughout and add $ prefix to targets
...
to use it, extended from a diff from George Nachman.
2013-03-25 10:11:45 +00:00
Nicholas Marriott
748acdc77c
Add wait-for -L and -U for lock and unlock, from Thiago Padilha.
2013-03-25 10:09:35 +00:00
Nicholas Marriott
14fad6a5cc
Add -A flag to new-session to make it behave like attach-session if the
...
session exists. If -A is used, -D behaves like -d to attach-session.
2013-03-24 09:58:40 +00:00
Nicholas Marriott
a05b8c4143
Add a -o option to set-option to prevent setting an option already set,
...
from Thiago Padilha.
2013-03-24 09:55:02 +00:00
Nicholas Marriott
66edb3392b
Expand format variables in the run-shell and if-shell shell commands,
...
from Thiago Padilha.
2013-03-24 09:33:35 +00:00
Nicholas Marriott
ac1fe83596
Couple of fixes pointed out by jmc.
2013-03-22 18:45:36 +00:00
Nicholas Marriott
702ab8bab0
Add a load of miscellaneous pane formats, from George Nachman.
2013-03-22 16:03:35 +00:00
Nicholas Marriott
8478895eeb
Add -e flag to capture-pane to include embedded ANSI SGR escape
...
sequences, from George Nachman.
2013-03-22 15:51:54 +00:00
Nicholas Marriott
f0efa576e0
Add resize-pane -x and -y for absolute pane size (much requested).
2013-03-22 10:37:39 +00:00
Nicholas Marriott
ad760b3bf7
Add client_session and client_last_session formats.
2013-03-22 10:32:36 +00:00
Nicholas Marriott
78543cce30
Support capture-pane -p to send to stdout.
2013-03-21 18:43:34 +00:00
Jason McIntyre
55bf2ecc68
tweak previous; ok nicm
2013-03-21 17:42:36 +00:00
Nicholas Marriott
4920306486
Clarify choose-tree entry in man page.
2013-03-21 16:23:46 +00:00
Nicholas Marriott
180faf73af
Allow choose commands to be used outside tmux, so long as at least one
...
client is attached.
2013-03-21 16:09:59 +00:00
Nicholas Marriott
e33ba57c13
Remove the layout undo/redo code which never really worked.
2013-01-17 00:11:22 +00:00
Nicholas Marriott
bc2e4a36df
If timing between keys is less than (by default) 1 millisecond, assume
...
the text is being pasted. assume-paste-time option changes the value (0
disables). Based on a diff from Marcin Kulik.
2013-01-15 22:55:29 +00:00
Nicholas Marriott
854e8ae04d
Add ^ and $ special command targets to select lowest and highest
...
numbered windows, from Raghavendra D Prabhu.
2012-12-24 12:38:57 +00:00
Nicholas Marriott
4aa4e9fb26
Allow cmd-run-shell to accept -t to specify the pane to display the
...
output, requested by Alexander Tsepkov.
2012-11-27 15:09:35 +00:00
Nicholas Marriott
93224260ae
Add window-status-last-* options, from Boris Faure.
2012-11-27 13:52:23 +00:00
Nicholas Marriott
9a7e5bd1d3
Clarify some points about config files, notably that they are only read
...
at server start. From Thomas Adam.
2012-11-19 10:50:24 +00:00
Nicholas Marriott
589b4b8c6a
Fix typo bell->bells from Thomas Adam.
2012-10-25 11:11:58 +00:00
Nicholas Marriott
ea289bc457
Remove some out of date text from man page, from Thomas Adam.
2012-10-02 08:02:21 +00:00
Nicholas Marriott
7263fa36eb
add cmd-choose-list to allow arbitrary options to be selected. From
...
Thomas Adam.
2012-09-03 09:57:57 +00:00
Nicholas Marriott
cf2e65c0e2
Another missing format from sam at sltosis.org.
2012-08-11 07:10:01 +00:00
Nicholas Marriott
ff4097e02c
Add some missing formats from Samuel Le Thiec.
2012-08-11 05:55:12 +00:00
Nicholas Marriott
89a96b05fa
Document pane_index variable, from sam at sltosis dot org.
2012-07-15 06:51:57 +00:00
Jason McIntyre
b0f4f94b5b
remove extraneous line;
2012-07-08 17:24:29 +00:00
Nicholas Marriott
f20c6fe009
Add choose-tree command to show windows and sessions in the same
...
list. Change choose-window and -session to use the same code. From
Thomas Adam.
2012-07-08 16:04:38 +00:00
Nicholas Marriott
2113115cdd
Add -a for kill-session, from Thomas Adam.
2012-06-18 09:16:15 +00:00
Nicholas Marriott
038e8b770d
Add -a flag for detach-client, from Thomas Adam.
2012-06-18 09:15:22 +00:00
Nicholas Marriott
04ac61ecd7
Simplify references to alerts in the man page, from Thomas Adam.
2012-06-18 09:13:12 +00:00
Nicholas Marriott
ebf94bc9cb
Switch all of the various choose- and list- commands over to the format
...
infrastructure, from Thomas Adam.
2012-05-22 11:35:37 +00:00
Nicholas Marriott
ac7e2f13e9
Ignore line continuation when escaped as \\, from Simon Nicolussi.
2012-05-17 21:21:31 +00:00
Nicholas Marriott
cc979bda0f
default-path has the same possibilities as new-window -c now.
2012-05-02 19:29:13 +00:00
Nicholas Marriott
a6c22d650b
Add a flag to move-window to renumber the windows in a session (closing
...
any gaps) and add an option to do this automatically each time a window
is killed. From Thomas Adam.
2012-04-29 17:20:01 +00:00
Nicholas Marriott
e02d1bce98
Add window-status-separator option, from Thomas Adam.
2012-04-23 22:23:14 +00:00
Nicholas Marriott
ed58b2d353
Add -a flag to kill-window, from Thomas Adam.
2012-04-23 22:10:45 +00:00
Nicholas Marriott
85f5485cb5
Add a layout history which can be stepped through with select-layout -u
...
and -U commands (bound to 'u' and 'U' by default).
2012-04-01 13:18:38 +00:00
Nicholas Marriott
b831f86354
Add pane_current_path format, suggested by Mikolaj Kucharski.
2012-04-01 10:42:39 +00:00
Nicholas Marriott
c0cfbe12e4
Accept an argument to show-environment to show one variable, based on a
...
diff from Kazuhiko Sakaguchi.
2012-03-22 11:11:57 +00:00
Nicholas Marriott
90bf560fe4
Add -C -N -T flags to find-window to find in content, name, title. From
...
Jonathan Daugherty.
2012-03-20 17:09:48 +00:00
Nicholas Marriott
01f2b5d64b
50 is a too low trigger default on larger terminals, bump to 250.
2012-03-20 11:23:12 +00:00
Nicholas Marriott
f59971276a
Add a simple form of output rate limiting by counting the number of
...
certain C0 sequences (linefeeds, backspaces, carriage returns) and if it
exceeds a threshold (current default 50/millisecond), start to redraw
the pane every 100 milliseconds instead of making each change as it
comes. Two configuration options - c0-change-trigger and
c0-change-interval.
This makes tmux much more responsive under very fast output (for example
yes(1) or accidentally cat'ing a large file) but may not be perfect on
all terminals and connections - feedback very welcome, particularly
where this change has a negative rather than positive effect (making it
off by default is a possibility).
After much experimentation based originally on a request Robin Lee
Powell (which ended with a completely different solution), this idea
from discussion with Ailin Nemui.
2012-03-20 11:01:00 +00:00
Nicholas Marriott
95f48a219a
Add a wrap-search option to turn off wrapping of searches in copy
...
mode. From Jacobo de Vera.
2012-03-17 21:40:53 +00:00
Nicholas Marriott
f152379e5a
Add -q option to set-option to turn off info message, from marcel partap.
2012-03-17 21:33:33 +00:00
Nicholas Marriott
4e05a2c0ae
Add -P/-F flags to break-pane too, from George Nachman.
2012-03-12 13:31:09 +00:00
Nicholas Marriott
03dca66ae2
Add -F format to new-window and split-window to use with the -P flag,
...
from George Nachman.
2012-03-04 20:50:53 +00:00
Nicholas Marriott
f4fdddc930
Support "bracketed paste" mode. This adds a -p flag to paste-buffer - if
...
this is used and the application has requested bracketed pastes, then
tmux surrounds the pasted text by \033[200~ and \033[201~. Applications
like vim can (apparently) use this to avoid, for example, indenting the
text. From Ailin Nemui.
2012-03-03 09:43:22 +00:00
Nicholas Marriott
07ac16807f
Add move-pane command (like join-pane but allows the same window). Also
...
-b flag to join-pane and move-pane to place the pane to the left or
above. From George Nachman.
2012-03-03 08:31:18 +00:00
Nicholas Marriott
4e7de210e4
Allow a single option to be specified to show-options to show just that
...
option.
2012-02-25 12:57:42 +00:00
Nicholas Marriott
aaf0bfccf4
Use format for display-message, based on a diff from George Nachman.
2012-02-23 22:40:58 +00:00
Nicholas Marriott
fe7cf0ba90
Document option values, particularly that omitting on|off for a flag is
...
a toggle.
2012-02-02 22:33:05 +00:00
Nicholas Marriott
efb639e1d2
Add -l flag to send-keys to send input literally (without translating
...
key names). From Frank Terbeck.
2012-02-02 00:15:28 +00:00
Nicholas Marriott
908a22e41c
Provide defined ways to set the various default-path possibilities: ~
...
for home directory, . for server start directory, - for session start
directory and empty for the pane's working directory (the default). All
can also be used as part of a relative path (eg -/foo). Also provide -c
flags to neww and splitw to override default-path setting.
Based on a diff from sthen. ok sthen
2012-01-31 15:52:21 +00:00
Jason McIntyre
677ed3e5f0
id -> ID; ok nicm
2012-01-30 20:48:28 +00:00
Nicholas Marriott
0e59bc75fd
Give each window a unique id, like panes but prefixed with @. Based on
...
work from George Nachman.
2012-01-30 09:39:34 +00:00
Nicholas Marriott
230d0fbc9e
Add an option to move the status line to the top of the screen,
...
requested by many.
2012-01-29 09:37:02 +00:00
Nicholas Marriott
e870a3f3ec
it's -> its.
2012-01-21 20:40:28 +00:00
Nicholas Marriott
535286c05a
Drop the ability to have a list of keys in the prefix in favour of two
...
separate options, prefix and prefix2. This simplifies the code and gets
rid the data options type which was only used for this one option.
Also add a -2 flag to send-prefix to send the secondary prefix key,
fixing a cause of minor irritation.
People who want three prefix keys are out of luck :-).
2012-01-21 08:40:09 +00:00
Nicholas Marriott
7f24020cbe
Add strings to allow the aixterm bright colours to be used when
...
configuring colours, requested by Elliott Cable a few months ago.
2012-01-21 08:23:12 +00:00
Nicholas Marriott
66f04514cf
Add a -R flag to send-keys to reset the terminal. Written ages ago and
...
Suggested by someone, I forget who.
2012-01-21 08:10:21 +00:00
Nicholas Marriott
8cf19ab770
Add some trivial additional status line attributes from jwcxz at users
...
dot sourceforge dot net.
2012-01-20 19:51:28 +00:00
Nicholas Marriott
199d148740
Remove trailing spaces.
2012-01-20 19:16:16 +00:00
Nicholas Marriott
dcad13155b
Add an option to disable the window rename escape sequence, from Romain
...
Francoise.
2012-01-20 19:15:40 +00:00
Nicholas Marriott
eeaf92ad06
Add a man page section on window names and pane titles, from Felix
...
Rosencrantz.
2011-12-31 03:40:15 +00:00
Stuart Henderson
16f9667620
Show how to set default-path to revert to tmux's old behaviour of opening
...
new windows in the current working directory at the time tmux was started,
it's not obvious. naddy@ agrees this is a useful inclusion.
2011-12-30 14:59:13 +00:00
Stefan Sperling
fdd1d0b72e
Allow $HOME as default-path in tmux.conf so the same config file can be used
...
on different machines regardless of where the user's home directory is.
ok nicm
2011-12-27 14:07:20 +00:00
Jason McIntyre
da145e7c20
formatting errors, found using freebsd's "igor";
2011-12-24 08:46:48 +00:00
Nicholas Marriott
f308ba93aa
Change the way the working directory for new processes is discovered. If
...
default-path isn't empty, it is used. Otherwise:
1) If tmux neww is run from the command line, the working directory of the
client is used.
2) Otherwise sysctl KERN_PROC_CWD is used to retrieve the current
working directory of the process in the active pane.
3) If that fails, the directory where the session was created is used.
Support code by Romain Francois, OpenBSD specific bits by me.
Note this requires a recent userland and kernel with KERN_PROC_CWD.
2011-12-09 16:28:18 +00:00
Nicholas Marriott
e04d13f6a6
Support "jump to" like vi in copy mode using t and T keys. Also add x
...
and X for delete in edit mode.
From Ben Boeckel, thanks.
2011-12-04 16:18:01 +00:00
Nicholas Marriott
fd25d35868
Move word-separators to be a session rather than window option, from Ben
...
Boeckel.
2011-11-15 23:24:04 +00:00
Nicholas Marriott
6c1c304fc3
Missing bits for new keys and buffer indexes, from Tiago Cunha
2011-11-05 09:13:00 +00:00
Nicholas Marriott
e5bf63cb59
Option to change status line (message) background when using vi keys and
...
in command mode. From Ben Boeckel.
2011-11-05 09:06:31 +00:00
Jason McIntyre
e5d6df8979
minor formatting fix;
2011-10-27 23:33:35 +00:00
Nicholas Marriott
5ed3daf28b
Didn't really think the else behaviour through - requiring argv to
...
contain "else" is silly so just omit that, also some manpage
tweaks. From Tiago Cunha.
2011-10-27 22:40:15 +00:00
Nicholas Marriott
16d75a6bf2
Add client formats, from Ben Boeckel.
2011-10-23 01:12:46 +00:00
Nicholas Marriott
49ef0b4af3
Add a few more formats for panes (tty, pid, start cmd/cwd).
2011-10-02 06:55:48 +00:00
Nicholas Marriott
b1ed2d5bd9
Add -S option to refresh-client to redraw status line, from Marco Beck.
2011-09-28 20:11:21 +00:00
Nicholas Marriott
f14da260c8
Tweaks to the format parts, from Tiago Cunha.
2011-09-23 18:33:43 +00:00
Jason McIntyre
2888843a18
tweak previous;
2011-08-26 13:07:49 +00:00
Nicholas Marriott
4a5dff3f11
Add initial framework for more powerful formatting of command output and
...
use it for list-{panes,windows,sessions}. This allows more descriptive
replacements (such as #{session_name}) and conditionals.
Later this will be used for status_replace and list-keys and other
places.
2011-08-26 10:53:16 +00:00
Nicholas Marriott
0588168a64
Support \ for line continuation in the configuration file, from Julius
...
Plenz.
2011-08-24 10:46:01 +00:00
Nicholas Marriott
f01b7191a3
Add pane-base-index option, from Ben Barbour.
2011-08-24 10:29:57 +00:00
Nicholas Marriott
88e9079870
Add a -r flag to switch-client to toggle the client read-only flag. From
...
Johan Commelin.
2011-08-16 10:00:52 +00:00
Jason McIntyre
cf90f2a29c
fix error in previous;
2011-07-30 18:27:57 +00:00
Nicholas Marriott
cc5bcbfb59
Extend the mode-mouse option to add a third choice which means the mouse
...
does not enter copy mode. Patch from SF bug 3374493.
In future the mode-mouse option is likely to die and be broken into
several smaller options.
2011-07-30 18:01:26 +00:00
Nicholas Marriott
0252796a57
Sort options alphabetically, from Tiago Cunha.
2011-07-25 09:57:28 +00:00
Nicholas Marriott
2de9b1e005
Make confirm-before prompt customizable with -p option like
...
command-prompt. Also move responsibility for calling status_replace into
status_prompt_{set,update} and add #W and #P to the default kill-window
and kill-pane prompts. By Tiago Cunha.
2011-07-08 06:37:57 +00:00
Nicholas Marriott
f12158bc25
Add an option to trigger the terminal bell when there is an alert, from
...
Marco Beck.
2011-07-03 19:07:54 +00:00
Nicholas Marriott
94f86edfee
Include the existing window and session name in the prompt when renaming
...
and add a new key binding ($) for rename session. From Tiago Cunha.
2011-07-03 18:18:15 +00:00
Nicholas Marriott
ad60a2c952
Allow the initial context on prompts to be set with the new -I option to
...
command-prompt. From Tiago Cunha.
2011-07-02 21:05:44 +00:00
Nicholas Marriott
65177b82be
Add a respawn-pane command, from Marcel Partap.
2011-06-05 11:19:03 +00:00
Nicholas Marriott
f537870909
Fix a typo, spotted by Michal Mazurek..
2011-05-30 21:02:28 +00:00
Jason McIntyre
240cae4c92
tweak the TERMINFO section; ok nicm
2011-05-21 10:04:17 +00:00
Nicholas Marriott
1af2021de6
Pass prompts through status_replace so that they can be more helpful
...
(such as showing the previous session name when renaming). From Tiago
Cunha.
2011-05-20 19:29:13 +00:00
Nicholas Marriott
3ea5e06bfb
Support DECSCUSR sequence to set the cursor style with two new
...
terminfo(5) extensions, Cs and Csr. Written by Ailin Nemui.
2011-05-20 19:17:39 +00:00