Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/external/bsd/tmux/dist CHANGES FROM 2.3 to 2.4 20 April 2017
details: https://anonhg.NetBSD.org/src/rev/4e3a47022289
branches: trunk
changeset: 353192:4e3a47022289
user: christos <christos%NetBSD.org@localhost>
date: Sun Apr 23 00:21:37 2017 +0000
description:
CHANGES FROM 2.3 to 2.4 20 April 2017
Incompatible Changes
====================
* Key tables have undergone major changes. Mode key tables are no longer
separate from the main key tables. All mode key tables have been removed,
together with the -t flag to bind-key and unbind-key.
The emacs-edit, vi-edit, emacs-choose and vi-choose tables have been replaced
by fixed key bindings in the command prompt and choose modes. The mode-keys
and status-keys options remain.
The emacs-copy and vi-copy tables have been replaced by the copy-mode and
copy-mode-vi tables. Commands are sent using the -X and -N flags to
send-keys. So the following:
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 changes allows the full command parser (including command sequences) and
command set to be used - for example, the normal command prompt with editing
and history is now used for searching, jumping, and so on instead of a custom
one. The default C-r binding is now:
bind -Tcopy-mode C-r command-prompt -p'search up' "send -X search-backward '%%'"
There are also some new commmands available with send -X, such as
copy-pipe-and-cancel.
* set-remain-on-exit has gone -- can be achieved with hooks instead.
* Hooks: before hooks have been removed and only a selection of commands now
have after hooks (they are no longer automatic). Additional hooks have been
added.
* The xterm-keys option now defaults to on.
Normal Changes
==============
* Support for mouse double and triple clicks.
* BCE (Background Colour Erase) is now supported.
* All occurrences of a search string in copy mode are now highlighted;
additionally, the number of search results is displayed. The highlighting
updates interactively with the default emacs key bindings (incremental
search).
* source-file now understands glob patterns.
* Formats now have simple comparisons:
#{==:a,b}
#{!=:a,b}
* There are the following new formats:
- #{version} -- the tmux server version;
- #{client_termtype} -- the terminal type of the client;
- #{client_name} -- the name of a client;
- #{client_written} -- the number of bytes written to the client.
* The configuration file now accepts %if/%endif conditional blocks which are
processed when it is parsed; the argument is a format string (useful with the
new format comparison options).
* detach-client now has -E to execute a command replacing the client instead of
exiting.
* 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.
* break-pane now has -n to specify the new window name.
* OSC 52 support has been added for programs inside tmux to set a tmux buffer.
* The mouse "all event" mode (1003) is now supported.
* Palette setting is now possible (OSC 4 and 104).
* Strikethrough support (a recent terminfo is required).
* Grouped sessions can now be named (new -t).
* terminal-overrides and update-environment are now array options (the previous
set -ag syntax should work without change).
* There have been substantial performance improvements.
CHANGES FROM 2.2 to 2.3 29 September 2016
Incompatible Changes
====================
None.
Normal Changes
==============
* New option 'pane-border-status' to add text in the pane borders.
* Support for hooks on commands: 'after' and 'before' hooks.
* 'source-file' understands '-q' to suppress errors for nonexistent files.
* Lots of UTF8 improvements, especially on MacOS.
* 'window-status-separator' understands #[] expansions.
* 'split-window' understands '-f' for performing a full-width split.
* Allow report count to be specified when using 'bind-key -R'.
* 'set -a' for appending to user options (@foo) is now supported.
* 'display-panes' can now accept a command to run, rather than always
selecting the pane.
diffstat:
external/bsd/tmux/dist/CHANGES | 2144 ++++++
external/bsd/tmux/dist/COPYING | 21 +
external/bsd/tmux/dist/FAQ | 462 +
external/bsd/tmux/dist/Makefile.am | 203 +
external/bsd/tmux/dist/Makefile.in | 1194 +++
external/bsd/tmux/dist/README | 73 +
external/bsd/tmux/dist/TODO | 122 +
external/bsd/tmux/dist/aclocal.m4 | 1352 +++
external/bsd/tmux/dist/alerts.c | 300 +-
external/bsd/tmux/dist/arguments.c | 65 +-
external/bsd/tmux/dist/attributes.c | 23 +-
external/bsd/tmux/dist/cfg.c | 148 +-
external/bsd/tmux/dist/cmd-bind-key.c | 103 +-
external/bsd/tmux/dist/cmd-break-pane.c | 54 +-
external/bsd/tmux/dist/cmd-choose-buffer.c | 13 +-
external/bsd/tmux/dist/cmd-choose-client.c | 25 +-
external/bsd/tmux/dist/cmd-choose-tree.c | 14 +-
external/bsd/tmux/dist/cmd-command-prompt.c | 91 +-
external/bsd/tmux/dist/cmd-confirm-before.c | 49 +-
external/bsd/tmux/dist/cmd-copy-mode.c | 20 +-
external/bsd/tmux/dist/cmd-detach-client.c | 38 +-
external/bsd/tmux/dist/cmd-display-panes.c | 79 +-
external/bsd/tmux/dist/cmd-find-window.c | 30 +-
external/bsd/tmux/dist/cmd-find.c | 282 +-
external/bsd/tmux/dist/cmd-join-pane.c | 54 +-
external/bsd/tmux/dist/cmd-kill-pane.c | 27 +-
external/bsd/tmux/dist/cmd-kill-server.c | 6 +-
external/bsd/tmux/dist/cmd-kill-session.c | 8 +-
external/bsd/tmux/dist/cmd-kill-window.c | 12 +-
external/bsd/tmux/dist/cmd-list-buffers.c | 12 +-
external/bsd/tmux/dist/cmd-list-clients.c | 16 +-
external/bsd/tmux/dist/cmd-list-keys.c | 119 +-
external/bsd/tmux/dist/cmd-list-panes.c | 50 +-
external/bsd/tmux/dist/cmd-list-sessions.c | 13 +-
external/bsd/tmux/dist/cmd-list-windows.c | 32 +-
external/bsd/tmux/dist/cmd-lock-server.c | 16 +-
external/bsd/tmux/dist/cmd-move-window.c | 19 +-
external/bsd/tmux/dist/cmd-pipe-pane.c | 26 +-
external/bsd/tmux/dist/cmd-queue.c | 521 +-
external/bsd/tmux/dist/cmd-refresh-client.c | 19 +-
external/bsd/tmux/dist/cmd-rename-session.c | 21 +-
external/bsd/tmux/dist/cmd-rename-window.c | 11 +-
external/bsd/tmux/dist/cmd-resize-pane.c | 49 +-
external/bsd/tmux/dist/cmd-respawn-pane.c | 29 +-
external/bsd/tmux/dist/cmd-respawn-window.c | 27 +-
external/bsd/tmux/dist/cmd-rotate-window.c | 11 +-
external/bsd/tmux/dist/cmd-run-shell.c | 91 +-
external/bsd/tmux/dist/cmd-save-buffer.c | 54 +-
external/bsd/tmux/dist/cmd-select-layout.c | 17 +-
external/bsd/tmux/dist/cmd-select-pane.c | 21 +-
external/bsd/tmux/dist/cmd-select-window.c | 19 +-
external/bsd/tmux/dist/cmd-set-buffer.c | 20 +-
external/bsd/tmux/dist/cmd-set-environment.c | 27 +-
external/bsd/tmux/dist/cmd-set-hook.c | 40 +-
external/bsd/tmux/dist/cmd-set-option.c | 621 +-
external/bsd/tmux/dist/cmd-show-environment.c | 47 +-
external/bsd/tmux/dist/cmd-show-options.c | 206 +-
external/bsd/tmux/dist/cmd-source-file.c | 100 +-
external/bsd/tmux/dist/cmd-swap-pane.c | 14 +-
external/bsd/tmux/dist/cmd-swap-window.c | 34 +-
external/bsd/tmux/dist/cmd-switch-client.c | 32 +-
external/bsd/tmux/dist/cmd-unbind-key.c | 59 +-
external/bsd/tmux/dist/cmd.c | 185 +-
external/bsd/tmux/dist/compat.h | 103 +-
external/bsd/tmux/dist/compat/base64.c | 315 +
external/bsd/tmux/dist/compat/cfmakeraw.c | 7 +-
external/bsd/tmux/dist/compat/err.c | 93 +
external/bsd/tmux/dist/compat/explicit_bzero.c | 15 +
external/bsd/tmux/dist/compat/fparseln.c | 2 +-
external/bsd/tmux/dist/compat/freezero.c | 31 +
external/bsd/tmux/dist/compat/getdtablecount.c | 55 +
external/bsd/tmux/dist/compat/getprogname.c | 43 +
external/bsd/tmux/dist/compat/imsg.h | 29 +-
external/bsd/tmux/dist/compat/reallocarray.c | 2 +-
external/bsd/tmux/dist/compat/recallocarray.c | 82 +
external/bsd/tmux/dist/compat/setproctitle.c | 52 +
external/bsd/tmux/dist/compat/strndup.c | 41 +
external/bsd/tmux/dist/compat/strnlen.c | 34 +
external/bsd/tmux/dist/compat/utf8proc.c | 66 +
external/bsd/tmux/dist/configure | 8428 ++++++++++++++++++++++++
external/bsd/tmux/dist/configure.ac | 625 +
external/bsd/tmux/dist/control-notify.c | 16 +-
external/bsd/tmux/dist/control.c | 38 +-
external/bsd/tmux/dist/etc/compile | 347 +
external/bsd/tmux/dist/etc/config.guess | 1421 ++++
external/bsd/tmux/dist/etc/config.sub | 1807 +++++
external/bsd/tmux/dist/etc/depcomp | 791 ++
external/bsd/tmux/dist/etc/install-sh | 501 +
external/bsd/tmux/dist/etc/missing | 215 +
external/bsd/tmux/dist/example_tmux.conf | 27 +-
external/bsd/tmux/dist/grid-view.c | 73 +-
external/bsd/tmux/dist/key-string.c | 40 +-
external/bsd/tmux/dist/layout-custom.c | 29 +-
external/bsd/tmux/dist/layout-set.c | 44 +-
external/bsd/tmux/dist/layout.c | 434 +-
external/bsd/tmux/dist/names.c | 26 +-
external/bsd/tmux/dist/notify.c | 241 +-
external/bsd/tmux/dist/options-table.c | 159 +-
external/bsd/tmux/dist/osdep-darwin.c | 30 +-
external/bsd/tmux/dist/osdep-netbsd.c | 16 +-
external/bsd/tmux/dist/osdep-openbsd.c | 10 +-
external/bsd/tmux/dist/osdep-sunos.c | 4 +-
external/bsd/tmux/dist/pty.c | 88 +
external/bsd/tmux/dist/resize.c | 12 +-
external/bsd/tmux/dist/screen-redraw.c | 257 +-
external/bsd/tmux/dist/server.c | 56 +-
external/bsd/tmux/dist/signal.c | 12 +-
external/bsd/tmux/dist/style.c | 148 +-
external/bsd/tmux/dist/tty.c | 1265 ++-
external/bsd/tmux/dist/window-choose.c | 473 +-
external/bsd/tmux/dist/window-clock.c | 42 +-
external/bsd/tmux/dist/xmalloc.c | 10 +
external/bsd/tmux/dist/xterm-keys.c | 13 +-
113 files changed, 24861 insertions(+), 3397 deletions(-)
diffs (truncated from 34433 to 300 lines):
diff -r 589b5849bf08 -r 4e3a47022289 external/bsd/tmux/dist/CHANGES
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/external/bsd/tmux/dist/CHANGES Sun Apr 23 00:21:37 2017 +0000
@@ -0,0 +1,2144 @@
+CHANGES FROM 2.3 to 2.4 20 April 2017
+
+Incompatible Changes
+====================
+
+* Key tables have undergone major changes. Mode key tables are no longer
+ separate from the main key tables. All mode key tables have been removed,
+ together with the -t flag to bind-key and unbind-key.
+
+ The emacs-edit, vi-edit, emacs-choose and vi-choose tables have been replaced
+ by fixed key bindings in the command prompt and choose modes. The mode-keys
+ and status-keys options remain.
+
+ The emacs-copy and vi-copy tables have been replaced by the copy-mode and
+ copy-mode-vi tables. Commands are sent using the -X and -N flags to
+ send-keys. So the following:
+
+ 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 changes allows the full command parser (including command sequences) and
+ command set to be used - for example, the normal command prompt with editing
+ and history is now used for searching, jumping, and so on instead of a custom
+ one. The default C-r binding is now:
+
+ bind -Tcopy-mode C-r command-prompt -p'search up' "send -X search-backward '%%'"
+
+ There are also some new commmands available with send -X, such as
+ copy-pipe-and-cancel.
+* set-remain-on-exit has gone -- can be achieved with hooks instead.
+* Hooks: before hooks have been removed and only a selection of commands now
+ have after hooks (they are no longer automatic). Additional hooks have been
+ added.
+* The xterm-keys option now defaults to on.
+
+Normal Changes
+==============
+
+* Support for mouse double and triple clicks.
+* BCE (Background Colour Erase) is now supported.
+* All occurrences of a search string in copy mode are now highlighted;
+ additionally, the number of search results is displayed. The highlighting
+ updates interactively with the default emacs key bindings (incremental
+ search).
+* source-file now understands glob patterns.
+* Formats now have simple comparisons:
+
+ #{==:a,b}
+ #{!=:a,b}
+
+* There are the following new formats:
+
+ - #{version} -- the tmux server version;
+ - #{client_termtype} -- the terminal type of the client;
+ - #{client_name} -- the name of a client;
+ - #{client_written} -- the number of bytes written to the client.
+
+* The configuration file now accepts %if/%endif conditional blocks which are
+ processed when it is parsed; the argument is a format string (useful with the
+ new format comparison options).
+* detach-client now has -E to execute a command replacing the client instead of
+ exiting.
+* 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.
+* break-pane now has -n to specify the new window name.
+* OSC 52 support has been added for programs inside tmux to set a tmux buffer.
+* The mouse "all event" mode (1003) is now supported.
+* Palette setting is now possible (OSC 4 and 104).
+* Strikethrough support (a recent terminfo is required).
+* Grouped sessions can now be named (new -t).
+* terminal-overrides and update-environment are now array options (the previous
+ set -ag syntax should work without change).
+* There have been substantial performance improvements.
+
+CHANGES FROM 2.2 to 2.3 29 September 2016
+
+Incompatible Changes
+====================
+
+None.
+
+Normal Changes
+==============
+
+* New option 'pane-border-status' to add text in the pane borders.
+* Support for hooks on commands: 'after' and 'before' hooks.
+* 'source-file' understands '-q' to suppress errors for nonexistent files.
+* Lots of UTF8 improvements, especially on MacOS.
+* 'window-status-separator' understands #[] expansions.
+* 'split-window' understands '-f' for performing a full-width split.
+* Allow report count to be specified when using 'bind-key -R'.
+* 'set -a' for appending to user options (@foo) is now supported.
+* 'display-panes' can now accept a command to run, rather than always
+ selecting the pane.
+
+CHANGES FROM 2.1 to 2.2 10 April 2016
+
+Incompatible Changes
+====================
+
+* The format strings which referenced time have been removed. Instead:
+
+ #{t:window_activity}
+
+can be used.
+
+* Support for TMPDIR has been removed. Use TMUX_TMPDIR instead.
+* UTF8 detection now happens automatically if the client supports it, hence
+ the:
+
+ mouse-utf8
+ utf8
+
+ options has been removed.
+* The:
+
+ mouse_utf8_flag
+
+ format string has been removed.
+* The -I option to show-messages has been removed. See:
+
+ #{t:start_time}
+
+ format option instead.
+
+Normal Changes
+==============
+
+* Panes are unzoomed with selectp -LRUD
+* New formats added:
+
+ #{scroll_position}
+ #{socket_path}
+ #{=10:...} -- limit to N characters (from the start)
+ #{=-10:...} -- limit to N characters (from the end)
+ #{t:...} -- used to format time-based formats
+ #{b:...} -- used to ascertain basename from string
+ #{d:...} -- used to ascertain dirname from string
+ #{s:...} -- used to perform substitutions on a string
+
+* Job output is run via the format system, so formats work again
+* If display-time is set to 0, then the indicators wait for a key to be
+ pressed.
+* list-keys and list-commands can be run without starting the tmux server.
+* kill-session learns -C to clear all alerts in all windows of the session.
+* Support for hooks (internal for now), but hooks for the following have been
+ implemented:
+
+ alert-bell
+ alert-silence
+ alert-activity
+ client-attached
+ client-detached
+ client-resized
+ pane-died
+ pane-exited
+
+* RGB (24bit) colour support. The 'Tc' flag must be set in the external TERM
+ entry (using terminal-overrides or a custom terminfo entry).
+
+
+CHANGES FROM 2.0 to 2.1 18 October 2015
+
+Incompatible Changes
+====================
+
+* Mouse-mode has been rewritten. There's now no longer options for:
+ - mouse-resize-pane
+ - mouse-select-pane
+ - mouse-select-window
+ - mode-mouse
+
+ Instead there is just one option: 'mouse' which turns on mouse support
+ entirely.
+* 'default-terminal' is now a session option. Furthermore, if this is set
+ to 'screen-*' then emulate what screen does. If italics are wanted, this
+ can be set to 'tmux' but this is still new and not necessarily supported
+ on all platforms with older ncurses installs.
+* The c0-* options for rate-limiting have been removed. Instead, a backoff
+ approach is used.
+
+Normal Changes
+==============
+
+* New formats:
+ - session_activity
+ - window_linked
+ - window_activity_format
+ - session_alerts
+ - session_last_attached
+ - client_pid
+ - pid
+* 'copy-selection', 'append-selection', 'start-named-buffer' now understand
+ an '-x' flag to prevent it exiting copying mode.
+* 'select-pane' now understands '-P' to set window/pane background colours.
+* 'renumber-windows' now understands windows which are unlinked.
+* 'bind' now understands multiple key tables. Allows for key-chaining.
+* 'select-layout' understands '-o' to undo the last layout change.
+* The environment is updated when switching sessions as well as attaching.
+* 'select-pane' now understands '-M' for marking a pane. This marked pane
+ can then be used with commands which understand src-pane specifiers
+ automatically.
+* If a session/window target is prefixed with '=' then only an exact match
+ is considered.
+* 'move-window' understands '-a'.
+* 'update-environment' understands '-E' when attach-session is used on an
+ already attached client.
+* 'show-environment' understands '-s' to output Bourne-compatible commands.
+* New option: 'history-file' to save/restore command prompt history.
+* Copy mode is exited if the history is cleared whilst in copy-mode.
+* 'copy-mode' learned '-e' to exit copy-mode when scrolling to end.
+
+CHANGES FROM 1.9a to 2.0 6 March 2015
+
+Incompatible Changes
+====================
+
+* The choose-list command has been removed.
+* 'terminal-overrides' is now a server option, not a session option.
+* 'message-limit' is now a server option, not a session option.
+* 'monitor-content' option has been removed.
+* 'pane_start_path' option has been removed.
+* The "info" mechanism which used to (for some commands) provide feedback
+ has been removed, and like other commands, they now produce nothing on
+ success.
+
+Normal Changes
+==============
+
+* tmux can now write an entry to utmp if the library 'utempter' is present
+ at compile time.
+* set-buffer learned append mode (-a), and a corresponding
+ 'append-selection' command has been added to copy-mode.
+* choose-mode now has the following commands which can be bound:
+ - start-of-list
+ - end-of-list
+ - top-line
+ - bottom-line
+
+* choose-buffer now understands UTF-8.
+* Pane navigation has changed:
+ - The old way of always using the top or left if the choice is ambiguous.
+ - The new way of remembering the last used pane is annoying if the
+ layout is balanced and the leftmost is obvious to the user (because
+ clearly if we go right from the top-left in a tiled set of four we want
+ to end up in top-right, even if we were last using the bottom-right).
+
+ So instead, use a combination of both: if there is only one possible
+ pane alongside the current pane, move to it, otherwise choose the most
+ recently used of the choice.
+* 'set-buffer' can now be told to give names to buffers.
+* The 'new-session', 'new-window', 'split-window', and 'respawn-pane' commands
+ now understand multiple arguments and handle quoting problems correctly.
+* 'capture-pane' understands '-S-' to mean the start of the pane, and '-E-' to
+ mean the end of the pane.
+* Support for function keys beyond F12 has changed. The following explains:
+ - F13-F24 are S-F1 to S-F12
+ - F25-F36 are C-F1 to C-F12
+ - F37-F48 are C-S-F1 to C-S-F12
+ - F49-F60 are M-F1 to M-F12
+ - F61-F63 are M-S-F1 to M-S-F3
+
+ Therefore, F13 becomes a binding of S-F1, etc.
+* Support using pane id as part of session or window specifier (so % means
+ session-of-%1 or window-of-%1) and window id as part of session
+ (so @1 means session-of-@1).
+* 'copy-pipe' command now understands formats via -F
+* 'if-shell' command now understands formats via -F
+* 'split-window' and 'join-window' understand -b to create the pane to the left
+ or above the target pane.
+
+CHANGES FROM 1.9 to 1.9a 22 February 2014
+
+NOTE: This is a bug-fix release to address some important bugs which just
+missed the 1.9 deadline, but were found afterwards.
+
+Normal Changes
+==============
+
+* Fix crash due to uninitialized lastwp member of layout_cell
+* Fix -fg/-bg/-style with 256 colour terminals.
+
+CHANGES FROM 1.8 to 1.9, 20 February 2014
+
+NOTE: This release has bumped the tmux protocol version. It is therefore
+advised that the prior tmux server is restarted when this version of tmux is
+installed, to avoid protocol mismatch errors for newer clients trying to
+talk to an older running tmux server.
+
+Incompatible Changes
Home |
Main Index |
Thread Index |
Old Index