summaryrefslogtreecommitdiffstats
path: root/options-table.c
AgeCommit message (Collapse)Author
2019-06-26Merge branch 'obsd-master'Thomas Adam
2019-06-26Add #define for the pane status line option position numbers.nicm
2019-06-20Merge branch 'obsd-master'Thomas Adam
2019-06-20Merge branch 'obsd-master'Thomas Adam
2019-06-20allow-rename and alternate-screen can be pane options.nicm
2019-06-20Add a per-pane option set. Pane options inherit from window options (sonicm
there should be no change to existing behaviour) and are set and shown with set-option -p and show-options -p. Change remain-on-exit and window-style/window-active-style to be pane options (some others will be changed later). This makes select-pane -P and -g unnecessary so no longer document them (they still work) and no longer document set-window-option and show-window-options in favour of set-option -w and show-options -w.
2019-05-26Merge branch 'obsd-master'Thomas Adam
2019-05-26Add formats for word and line under the mouse and use them to add somenicm
items to the pane menu.
2019-04-27Merge branch 'obsd-master'Thomas Adam
2019-04-26Merge hooks into options and make each one an array option. This allowsnicm
multiple commands to be easily bound to one hook. set-hook and show-hooks remain but they are now variants of set-option and show-options. show-options now has a -H flag to show hooks (by default they are not shown).
2019-04-23Merge branch 'obsd-master'Thomas Adam
2019-04-23Indicate an array option with a flag rather than a special type so thatnicm
in future will not have to be strings.
2019-04-07Merge branch 'obsd-master'Thomas Adam
2019-04-07Current window style also needs to be tested for default.nicm
2019-04-02Merge branch 'obsd-master'Thomas Adam
2019-04-02Silence flag should use the same option as activity, reported by Thomasnicm
Sattler.
2019-03-19Merge branch 'obsd-master'Thomas Adam
2019-03-19Include window-status-style and window-status-current style in the format.nicm
2019-03-19Merge branch 'obsd-master'Thomas Adam
2019-03-18The individual -fg, -bg and -attr options have been deprecated (innicm
favour of -style), undocumented and hidden from show-options since 2014. Remove them, except for status-fg and status-bg.
2019-03-18Merge branch 'obsd-master'Thomas Adam
2019-03-18Extend the #[] style syntax and use that together with previous formatnicm
changes to allow the status line to be entirely configured with a single option. Now that it is possible to configure their content, enable the existing code that lets the status line be multiple lines in height. The status option can now take a value of 2, 3, 4 or 5 (as well as the previous on or off) to configure more than one line. The new status-format array option configures the format of each line, the default just references the existing status-* options, although some of the more obscure status options may be eliminated in time. Additions to the #[] syntax are: "align" to specify alignment (left, centre, right), "list" for the window list and "range" to configure ranges of text for the mouse bindings. The "align" keyword can also be used to specify alignment of entries in tree mode and the pane status lines.
2018-10-25Merge branch 'obsd-master'Thomas Adam
2018-10-25Add a "terminal" colour which can be used instead of "default" in stylenicm
options for the terminal default colour, bypassing any inheritance from other options. Prompted by a discussion with abieber@.
2018-10-18Support for windows larger than visible on the attached client. This hasnicm
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-09-26Add formats for when window is larger than client, and show offset inNicholas Marriott
status-right by default when larger.
2018-08-20Support for windows larger than the client.Nicholas Marriott
This adds 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. 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). 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-width -x or -y. 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 higher memory use if you make a window that big. The minimum size is the size required for the current layout including borders. This change allows some code improvements, most notably that since windows can now never be cropped, that code can be removed from the layout code, and since panes can now never be outside the size of the window, window_pane_visible can be removed.
2018-04-23Merge branch 'obsd-master'Thomas Adam
2018-04-23Add KRB5CCNAME to update-environment.nicm
2018-02-22Merge branch 'obsd-master'Thomas Adam
2018-02-22Add exit-empty option to exit server if no sessions (defaults to on).nicm
2017-10-25Merge branch 'obsd-master'Thomas Adam
2017-10-25Default allow-rename to off because it is ridiculous that applicationsnicm
are even able to do this and confusing when they do.
2017-08-17Merge branch 'obsd-master'Thomas Adam
2017-08-17Add monitor-bell window option to match the activity and silencenicm
options, from Brad Town.
2017-08-16Merge branch 'obsd-master'Thomas Adam
2017-08-16Rename BELL_* values to ALERT_* now they are used by more than bells,nicm
based on a diff from Brad Town.
2017-07-26Merge branch 'obsd-master'Thomas Adam
2017-07-26Make bell, activity and silence alerting more consistent:nicm
- remove the bell-on-alert option; - add activity-action and silence-action options with the same possible values as the existing bell-action; - add "both" value for the visual-bell, visual-activity and visual-silence options to trigger both a bell and a message. This means all three work the same way. Based on changes from Yvain Thonnart.
2017-06-23Merge branch 'obsd-master'Thomas Adam
2017-06-23Add user-keys option to allow user-defined keys to be set, from Dannicm
Aloni.
2017-06-03Merge branch 'obsd-master'Thomas Adam
2017-06-03Make set-clipboard a three-state option so tmux itself can ignore thenicm
sequencess.
2017-05-31Merge branch 'obsd-master'Thomas Adam
Conflicts: Makefile.am cfg.c server-client.c
2017-05-30Rewrite of choose mode, both to simplify and tidy the code and to addnicm
some modern features. Now the common code is in mode-tree.c, which provides an API used by the three modes now separated into window-{buffer,client,tree}.c. Buffer mode shows buffers, client mode clients and tree mode a tree of sessions, windows and panes. Each mode has a common set of key bindings plus a few that are specific to the mode. Other changes are: - each mode has a preview pane: for buffers this is the buffer content (very useful), for others it is a preview of the pane; - items may be sorted in different ways ('O' key); - multiple items may be tagged and an operation applied to all of them (for example, to delete multiple buffers at once); - in tree mode a command may be run on the selected item (session, window, pane) or on tagged items (key ':'); - displayed items may be filtered in tree mode by using a format (this is used to implement find-window) (key 'f'); - the custom format (-F) for the display is no longer available; - shortcut keys change from 0-9, a-z, A-Z which was always a bit weird with keys used for other uses to 0-9, M-a to M-z. Now that the code is simpler, other improvements will come later. Primary key bindings for each mode are documented under the commands in the man page (choose-buffer, choose-client, choose-tree). Parts written by Thomas Adam.
2017-05-30Merge branch 'obsd-master'Thomas Adam
2017-05-29Store a copy of the old status line, will be needed soon for new choose mode.nicm
2017-01-24Merge branch 'obsd-master'Thomas Adam
2017-01-24Make update-environment an array as well.nicm
2017-01-24Convert terminal-overrides to an array option.nicm