Go to file
nicm c91b4b2e14 Tidy up the terminal detection and feature code and add named sets of
terminal features, each of which are defined in one place and map to a
builtin set of terminfo(5) capabilities. Features can be specified based
on TERM with a new terminal-features option or with the -T flag when
running tmux. tmux will also detect a few common terminals from the DA
and DSR responses.

This is intended to make it easier to configure tmux's use of
terminfo(5) even in the presence of outdated ncurses(3) or terminfo(5)
databases or for features which do not yet have a terminfo(5) entry.
Instead of having to grok terminfo(5) capability names and what they
should be set to in the terminal-overrides option, the user can
hopefully just give tmux a feature name and let it do the right thing.

The terminal-overrides option remains both for backwards compatibility
and to allow tweaks of individual capabilities.

tmux already did much of this already, this makes it tidier and simpler
to configure.
2020-04-20 13:25:36 +00:00
alerts.c Redrawing status is needed after changing window flags or title does not 2017-12-28 12:10:50 +00:00
arguments.c Print empty arguments properly. 2020-04-12 20:54:28 +00:00
attributes.c Style nits in function arguments. 2019-12-03 10:47:22 +00:00
cfg.c When adding a list of commands to the queue, instead of automatically 2020-04-13 15:55:51 +00:00
client.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
cmd-attach-session.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-bind-key.c Make struct cmd local to cmd.c and move it out of tmux.h. 2020-04-13 08:26:27 +00:00
cmd-break-pane.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-capture-pane.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-choose-tree.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-command-prompt.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-confirm-before.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-copy-mode.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-detach-client.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-display-menu.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-display-message.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-display-panes.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-find-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-find.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-has-session.c Instead of setting up the default keys by building the key struct 2014-10-20 22:29:25 +00:00
cmd-if-shell.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-join-pane.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-kill-pane.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-kill-server.c Make struct cmd local to cmd.c and move it out of tmux.h. 2020-04-13 08:26:27 +00:00
cmd-kill-session.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-kill-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-buffers.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-clients.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-keys.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-list-panes.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-sessions.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list-windows.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-list.c Merge cmd_list_parse into cmd-parse.y so it can use the new alias 2019-05-25 07:18:20 +00:00
cmd-load-buffer.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-lock-server.c Missed a few warnings in previous. 2020-04-13 20:54:15 +00:00
cmd-move-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-new-session.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-new-window.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-parse.y Add helpers for the simple case of parse string and add to command queue. 2020-04-13 18:59:41 +00:00
cmd-paste-buffer.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-pipe-pane.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-queue.c Provide an accessor for the running queue item and use it to not let 2020-04-14 06:00:52 +00:00
cmd-refresh-client.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-rename-session.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-rename-window.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-resize-pane.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-resize-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-respawn-pane.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-respawn-window.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-rotate-window.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-run-shell.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-save-buffer.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-select-layout.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-select-pane.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-select-window.c Move cmdq_state into cmd-queue.c. 2020-04-13 14:46:04 +00:00
cmd-send-keys.c Send keys when they are complete not before (!= vs ==). 2020-04-14 13:22:05 +00:00
cmd-send-prefix.c Make command exec functions return an enum rather than -1/0/1 values and 2012-07-11 07:10:15 +00:00
cmd-set-buffer.c Make struct cmd local to cmd.c and move it out of tmux.h. 2020-04-13 08:26:27 +00:00
cmd-set-environment.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-set-option.c Missed a few warnings in previous. 2020-04-13 20:54:15 +00:00
cmd-show-buffer.c Make command exec functions return an enum rather than -1/0/1 values and 2012-07-11 07:10:15 +00:00
cmd-show-environment.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-show-messages.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
cmd-show-options.c Missed a few warnings in previous. 2020-04-13 20:54:15 +00:00
cmd-source-file.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-split-window.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-swap-pane.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-swap-window.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd-switch-client.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
cmd-unbind-key.c Make struct cmd local to cmd.c and move it out of tmux.h. 2020-04-13 08:26:27 +00:00
cmd-wait-for.c Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its 2020-04-13 10:59:58 +00:00
cmd.c When parsing strings, put all commands in one group even if there are 2020-04-13 16:19:37 +00:00
colour.c Add support for underscore colours with Setulc capability, mostly from 2019-06-27 15:17:41 +00:00
control-notify.c Terminate the output buffer for control mode output - it is now used as 2020-03-16 09:12:44 +00:00
control.c Add helpers for the simple case of parse string and add to command queue. 2020-04-13 18:59:41 +00:00
environ.c Add a way to mark environment variables as "hidden" so they can be used 2020-03-31 17:14:40 +00:00
file.c If /dev/fd/X is a symlink and realpath() expands symlinks, /dev/fd/X 2019-12-16 16:39:03 +00:00
format-draw.c More style nits. 2020-04-09 15:35:27 +00:00
format.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
grid-view.c grid_view_delete_cells does need to clear, GitHub issue 1871. 2019-08-16 08:52:25 +00:00
grid.c Use grid_empty_line rather than memset when adding new lines on resize. 2020-04-15 12:59:20 +00:00
input-keys.c Do not send mouse events if the program has not requested them. 2020-04-07 13:38:30 +00:00
input.c Move alternate screen into the screen rather than the pane. 2020-03-31 07:00:34 +00:00
job.c Add support for overlay popup boxes to show text or output temporarily 2020-03-24 08:09:43 +00:00
key-bindings.c Add a copy-command option and change copy-pipe and friends to pipe to it 2020-04-17 08:03:22 +00:00
key-string.c Some unnecessary assignments and unused variables. 2020-04-09 13:52:31 +00:00
layout-custom.c Make a best effort to set xpixel and ypixel for each pane and add 2019-11-28 09:45:15 +00:00
layout-set.c Make a best effort to set xpixel and ypixel for each pane and add 2019-11-28 09:45:15 +00:00
layout.c Simplify code to work out if an extra line is needed in the cell. 2019-07-15 18:43:32 +00:00
log.c Some minor performance improvements - most notably, don't search the 2019-09-24 20:44:58 +00:00
Makefile Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
menu.c Start menu with top item selected if no mouse, GitHub issue 2169. 2020-04-16 17:20:23 +00:00
mode-key.c Drop the edit mode key tables and just use fixed key bindings for the 2016-10-12 14:50:14 +00:00
mode-tree.c Add helpers for the simple case of parse string and add to command queue. 2020-04-13 18:59:41 +00:00
names.c Allow ispunct() as well as isalnum() when parsing initial window names. 2017-07-21 12:58:02 +00:00
notify.c Provide an accessor for the running queue item and use it to not let 2020-04-14 06:00:52 +00:00
options-table.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
options.c Style nits in function arguments. 2019-12-03 10:47:22 +00:00
paste.c Add an argument to copy commands to set the prefix for the buffer name, 2019-04-02 09:03:39 +00:00
popup.c Add helpers for the simple case of parse string and add to command queue. 2020-04-13 18:59:41 +00:00
proc.c Reduce a difference with portable tmux by adding the -V flag and 2020-01-28 10:44:30 +00:00
procname.c Restore pane_current_path format from portable tmux, it is no longer 2020-04-08 11:26:07 +00:00
regsub.c Some minor style nits. 2020-04-09 14:23:34 +00:00
resize.c If ALL clients are readonly, allow them to affect the size, suggested by Thomas Sattler. 2020-01-28 13:23:24 +00:00
screen-redraw.c The PANE_REDRAW flag bit might be needed by other panes so we can't 2020-04-18 21:35:32 +00:00
screen-write.c A resize can realloc so cannot cache the value of the list pointer. 2020-04-18 17:20:25 +00:00
screen.c A resize can realloc so cannot cache the value of the list pointer. 2020-04-18 17:20:25 +00:00
server-client.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
server-fn.c Show signal name when process exits rather than number. 2020-04-16 07:28:36 +00:00
server.c When the server socket is given by the user with -S, create it with 2020-03-12 09:26:34 +00:00
session.c Add a number of new formats to inspect what sessions and clients a 2019-12-26 11:04:58 +00:00
spawn.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
status.c Add C-g to cancel command prompt with vi(1) keys as well as emacs, and q 2020-03-12 09:49:43 +00:00
style.c Add push-default and pop-default in styles to change the default colours 2019-09-15 21:42:57 +00:00
tmux.1 Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
tmux.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
tmux.h Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
tty-acs.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
tty-features.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
tty-keys.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
tty-term.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
tty.c Tidy up the terminal detection and feature code and add named sets of 2020-04-20 13:25:36 +00:00
utf8.c Add p format modifier for padding to width. 2019-11-25 15:04:15 +00:00
window-buffer.c Some unnecessary assignments and unused variables. 2020-04-09 13:52:31 +00:00
window-client.c Add a define for flags meaning a client is not attached, and fix 2020-01-28 08:06:11 +00:00
window-clock.c DECRC and DECSC apparently need to preserve origin mode as well, based 2019-03-12 20:02:47 +00:00
window-copy.c Only trim blank lines when the source pane is not the target pane, 2020-04-20 06:08:37 +00:00
window-tree.c More style nits. 2020-04-09 15:35:27 +00:00
window.c Make client -c and -t handling common in cmd-queue.c and try to be 2020-04-13 20:51:57 +00:00
xmalloc.c Add xrecallocarray. 2019-11-28 09:51:58 +00:00
xmalloc.h Add xrecallocarray. 2019-11-28 09:51:58 +00:00
xterm-keys.c Up to now, tmux sees \033\033[OA as M-Up and since we turned on 2017-05-07 21:25:59 +00:00