summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2017-04-20 11:00:15 +0100
committerNicholas Marriott <nicholas.marriott@gmail.com>2017-04-20 11:00:15 +0100
commite7c2f53f2afe2369ececac976ef13193c1d9ed3a (patch)
treef4e4ee1c01e29020883e590c8c312e7102708042
parent9b2f02efbdd720ff2cfc958224b4fd59284f9889 (diff)
Changes to CHANGES.
-rw-r--r--CHANGES103
1 files changed, 48 insertions, 55 deletions
diff --git a/CHANGES b/CHANGES
index 9f63cbec..116c9337 100644
--- a/CHANGES
+++ b/CHANGES
@@ -3,87 +3,80 @@ CHANGES FROM 2.3 to 2.4 XXXX April 2017
Incompatible Changes
====================
-* Key tables have undergone some changes, in particular the following tables
- have been removed:
+* 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.
- vi-edit
- vi-copy
- emacs-edit
- emacs-copy
+ 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.
- As an example:
+ 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:
- 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
- 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 '%%'"
+ Becomes:
- command-prompt also gets a -1 option to only require on key press, which
- is needed for jumping.
+ bind -Tcopy-mode C-Up send -X scroll-up
+ bind -Tcopy-mode WheelUpPane send -N5 -X scroll-up
-* Edit-mode key table has gone away -- instead, fixed key-bindings are used.
-* bind-key -c flag has been removed.
-* set-remain-on-exit has gone away -- can be achieved with hooks instead.
-* Hooks:
+ 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:
- - before- hooks have gone away;
- - Set number of commands now have hooks.
+ 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
==============
-* Mouse support for double and triple clicks has been added.
-* command-prompt understands -N
+* Support for mouse double and triple clicks.
* BCE (Background Colour Erase) is now supported.
-* copy-mode learned the copy-pipe-and-cancel command.
-* send -N now works for all keys, not just in copy mode.
* All occurrences of a search string in copy mode are now highlighted;
- additionally, the number of search results is also displayed.
-* Copy mode now supports incremental search.
+ 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:
- For instance:
-
- #{==:a,b}
- #{!=a,b}
+ #{==:a,b}
+ #{!=a,b}
-* Formats also learned the following new placeholders:
+* 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} -- Number of bytes written to the client.
+ - #{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; the argument
- is a format string (useful with the new format comparison options).
-* detach-client learned -E to exec a command to replace the client instead of
+* 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 learned -n
-* OSC52 support has been added for clipboard inside tmux.
-* Mouse "all event" mode (1003) has been added.
-* Palette setting is now possible.
-* Strikethrough support has been added (a recent terminfo is required)
+* 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).
-* There has also been many performance improvements as part of this version.
+* 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