Go to file
nicm 646995384d Support for windows larger than visible on the attached client. This has
been a limitation for a long time.

There are 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. The default is
currently largest but this may change. 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). The
offset of the visible portion of the window is shown in status-right.

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-window
-x or -y, and "setw -u window-size" to revert to automatic sizing..

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 much higher memory use if making a window excessively
big. The minimum size is the size required for the current layout
including borders.

The refresh-client command can be used to pan around a window, -U -D -L
-R moves up, down, left or right and -c returns to automatic cursor
tracking. The position is reset when the current window is changed.
2018-10-18 08:38:01 +00:00
Makefile Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +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 Run alert hooks based on the options rather than unconditionally, from 2017-08-23 09:14:21 +00:00
attributes.c Support for extended underline styles on terminals which offer them, 2018-10-18 07:57:57 +00:00
cfg.c Some unused code, GitHub issue 1219. 2018-01-15 15:27:03 +00:00
client.c Use <fcntl.h> instead of <sys/file.h> for open() and friends. 2018-04-26 12:42:51 +00:00
cmd-attach-session.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-bind-key.c Mass rename struct cmd_q to struct cmdq_item and related. 2016-10-16 19:04:05 +00:00
cmd-break-pane.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-capture-pane.c Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-choose-tree.c Add -Z flag to choose-tree, choose-client, choose-buffer to 2018-02-28 08:55:44 +00:00
cmd-command-prompt.c Tidy command prompt callbacks and pass in the client. 2017-05-17 15:20:23 +00:00
cmd-confirm-before.c Tidy command prompt callbacks and pass in the client. 2017-05-17 15:20:23 +00:00
cmd-copy-mode.c Rewrite of choose mode, both to simplify and tidy the code and to add 2017-05-30 21:44:59 +00:00
cmd-detach-client.c Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-display-message.c Remove unnecessary brackets. 2018-04-23 13:43:08 +00:00
cmd-display-panes.c Make display-panes block the client until a pane is chosen or it times out. 2018-08-02 07:55:16 +00:00
cmd-find-window.c Add -Z to find-window as well. 2018-08-20 15:00:42 +00:00
cmd-find.c SESSION_UNATTACHED flag is no longer necessary now we have an attached 2018-08-18 20:08:52 +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 Memory leaks, from Gang Fan in GitHub issue 1453. 2018-08-27 11:03:34 +00:00
cmd-join-pane.c Pass flags into cmd_find_from_* to fix prefer-unattached, reported by 2017-08-30 10:33:57 +00:00
cmd-kill-pane.c Add x and X to choose-tree (with a confirmation prompt) to kill an 2018-04-10 10:48:44 +00:00
cmd-kill-server.c Mass rename struct cmd_q to struct cmdq_item and related. 2016-10-16 19:04:05 +00:00
cmd-kill-session.c Some extra logging to show why tmux might exit. 2017-07-09 22:33:09 +00:00
cmd-kill-window.c Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-list-buffers.c In order that people can use formats like #D in #() in the status line 2017-05-01 12:20:55 +00:00
cmd-list-clients.c In order that people can use formats like #D in #() in the status line 2017-05-01 12:20:55 +00:00
cmd-list-keys.c Make key trees and some other bits static. 2018-08-02 11:44:07 +00:00
cmd-list-panes.c In order that people can use formats like #D in #() in the status line 2017-05-01 12:20:55 +00:00
cmd-list-sessions.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-list-windows.c In order that people can use formats like #D in #() in the status line 2017-05-01 12:20:55 +00:00
cmd-list.c I no longer use my SourceForge address so replace it. 2016-01-19 15:59:12 +00:00
cmd-load-buffer.c Memory leaks, from Gang Fan in GitHub issue 1453. 2018-08-27 11:03:34 +00:00
cmd-lock-server.c Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-move-window.c Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-new-session.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-new-window.c Fix new-window -k, GitHub issue 1403. 2018-07-15 06:57:13 +00:00
cmd-paste-buffer.c Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-pipe-pane.c Add -I to pipe-pane to connect pane stdin as well as stdout, suggested 2018-01-16 09:00:38 +00:00
cmd-queue.c Pass flags into cmd_find_from_* to fix prefer-unattached, reported by 2017-08-30 10:33:57 +00:00
cmd-refresh-client.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-rename-session.c Allow no client for rename-session, from Ryan Freeman. 2018-04-11 09:54:45 +00:00
cmd-rename-window.c Fix a regression: do not warn about no client in rename-window. 2018-03-23 19:17:03 +00:00
cmd-resize-pane.c Some tidying and helper functions. 2018-08-18 16:14:03 +00:00
cmd-resize-window.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-respawn-pane.c Add -c for respawn-pane and respawn-window, from J Raynor. 2017-07-21 09:17:19 +00:00
cmd-respawn-window.c Add -c for respawn-pane and respawn-window, from J Raynor. 2017-07-21 09:17:19 +00:00
cmd-rotate-window.c Pass flags into cmd_find_from_* to fix prefer-unattached, reported by 2017-08-30 10:33:57 +00:00
cmd-run-shell.c Memory leaks, from Gang Fan in GitHub issue 1453. 2018-08-27 11:03:34 +00:00
cmd-save-buffer.c Do not leak path or use it after free. 2018-07-31 13:06:44 +00:00
cmd-select-layout.c Fire notify for select-layout, from George Nachman. 2018-07-02 12:39:14 +00:00
cmd-select-pane.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-select-window.c Pass flags into cmd_find_from_* to fix prefer-unattached, reported by 2017-08-30 10:33:57 +00:00
cmd-send-keys.c Make key trees and some other bits static. 2018-08-02 11:44:07 +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 Mass rename struct cmd_q to struct cmdq_item and related. 2016-10-16 19:04:05 +00:00
cmd-set-environment.c Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-set-hook.c Add set-hook -R to run a hook immediately (useful to set multiple hooks 2018-07-04 12:30:52 +00:00
cmd-set-option.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +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 Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-show-messages.c Move job struct into job.c. 2018-08-23 15:45:05 +00:00
cmd-show-options.c 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
cmd-source-file.c Make server_client_get_cwd used (almost) everywhere we need to work out 2018-05-24 09:42:49 +00:00
cmd-split-window.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-string.c Expand \u and \U escape sequences in command strings, from Christopher 2018-08-19 19:03:46 +00:00
cmd-swap-pane.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-swap-window.c Get rid of the extra layer of flags and cmd_prepare() and just store the 2017-04-22 10:22:39 +00:00
cmd-switch-client.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
cmd-unbind-key.c Mass rename struct cmd_q to struct cmdq_item and related. 2016-10-16 19:04:05 +00:00
cmd-wait-for.c Mass rename struct cmd_q to struct cmdq_item and related. 2016-10-16 19:04:05 +00:00
cmd.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
colour.c Show count of search results in copy mode. 2017-03-24 07:14:27 +00:00
control-notify.c Some new notifications, mainly for active pane and current window and 2017-05-04 07:16:43 +00:00
control.c It is silly for cmd_list_parse to return an integer error when it could 2017-01-15 22:00:56 +00:00
environ.c Make environ_log prefix take a format. 2017-05-11 07:34:54 +00:00
format.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
grid-view.c Add accessors for grid linedata member, for some future work. From Dan 2018-07-04 09:44:07 +00:00
grid.c Support for extended underline styles on terminals which offer them, 2018-10-18 07:57:57 +00:00
hooks.c Remove unused hooks_run function, from Thomas Adam. 2018-01-18 07:10:53 +00:00
input-keys.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
input.c Support OSC 52 ? to read the top buffer inside tmux (when set-clipboard 2018-10-18 08:04:14 +00:00
job.c Use same working directory rules for jobs as new windows rather than 2018-09-27 07:43:18 +00:00
key-bindings.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
key-string.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
layout-custom.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
layout-set.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
layout.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
log.c Support SIGUSR2 to stop and start logging for an existing server. Also 2017-06-04 08:25:57 +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 Make key trees and some other bits static. 2018-08-02 11:44:07 +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 Add set-hook -R to run a hook immediately (useful to set multiple hooks 2018-07-04 12:30:52 +00:00
options-table.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
options.c Fix filtering so it works after the change to only show windows if they 2017-08-09 13:44:36 +00:00
paste.c Shorten a long line, and don't leak buffer in paste_add if size is zero. 2017-01-24 13:28:33 +00:00
proc.c Because ignore SIGCHLD early, letting signal_del restore it doesn't work 2017-07-14 18:49:07 +00:00
procname.c Loads more static, except for cmd-*.c and window-*.c. 2016-10-10 21:29:23 +00:00
resize.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
screen-redraw.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
screen-write.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
screen.c Move struct screen_sel into screen.c and tidy up members that are only 2018-07-31 11:49:26 +00:00
server-client.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
server-fn.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
server.c Move job struct into job.c. 2018-08-23 15:45:05 +00:00
session.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
status.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
style.c Add support for the strikethrough attribute (SGR 9), using the new smxx 2017-03-22 07:16:54 +00:00
tmux.1 Support OSC 52 ? to read the top buffer inside tmux (when set-clipboard 2018-10-18 08:04:14 +00:00
tmux.c Improve error message if creating socket parent directory fails, from 2018-01-12 10:22:02 +00:00
tmux.h Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
tty-acs.c Check the terminfo(5) U8 capability and disable using UTF-8 for ACS if 2017-05-15 16:44:04 +00:00
tty-keys.c Support OSC 52 ? to read the top buffer inside tmux (when set-clipboard 2018-10-18 08:04:14 +00:00
tty-term.c Support for extended underline styles on terminals which offer them, 2018-10-18 07:57:57 +00:00
tty.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
utf8.c Remove unused variable. 2017-06-04 09:02:57 +00:00
window-buffer.c Add -Z flag to choose-tree, choose-client, choose-buffer to 2018-02-28 08:55:44 +00:00
window-client.c Add -Z flag to choose-tree, choose-client, choose-buffer to 2018-02-28 08:55:44 +00:00
window-clock.c Rewrite of choose mode, both to simplify and tidy the code and to add 2017-05-30 21:44:59 +00:00
window-copy.c Do not move the cursor when the mouse wheel is used, GitHub issue 1493. 2018-10-03 15:27:55 +00:00
window-tree.c Expand \u and \U escape sequences in command strings, from Christopher 2018-08-19 19:03:46 +00:00
window.c Support for windows larger than visible on the attached client. This has 2018-10-18 08:38:01 +00:00
xmalloc.c Key running commands for #() by the unexpanded command, and run them 2016-11-17 10:06:08 +00:00
xmalloc.h Key running commands for #() by the unexpanded command, and run them 2016-11-17 10:06:08 +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