Up to [local] / src / usr.bin / tmux
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.141 / (download) - annotate - [select for diffs], Wed Aug 25 08:51:55 2021 UTC (2 years, 9 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE,
OPENBSD_7_5,
OPENBSD_7_4_BASE,
OPENBSD_7_4,
OPENBSD_7_3_BASE,
OPENBSD_7_3,
OPENBSD_7_2_BASE,
OPENBSD_7_2,
OPENBSD_7_1_BASE,
OPENBSD_7_1,
OPENBSD_7_0_BASE,
OPENBSD_7_0,
HEAD
Changes since 1.140: +17 -5 lines
Diff to previous 1.140 (colored) to selected 1.64 (colored)
Validate command argument types (string or command list) and give more useful error messages.
Revision 1.140 / (download) - annotate - [select for diffs], Sat Aug 21 10:22:39 2021 UTC (2 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.139: +4 -4 lines
Diff to previous 1.139 (colored) to selected 1.64 (colored)
Add args parsing callback for some future work, currently unused.
Revision 1.139 / (download) - annotate - [select for diffs], Fri Aug 20 19:50:17 2021 UTC (2 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.138: +13 -9 lines
Diff to previous 1.138 (colored) to selected 1.64 (colored)
Hide struct args behind a couple of accessor functions.
Revision 1.138 / (download) - annotate - [select for diffs], Tue Dec 15 08:31:50 2020 UTC (3 years, 5 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_9_BASE,
OPENBSD_6_9
Changes since 1.137: +18 -5 lines
Diff to previous 1.137 (colored) to selected 1.64 (colored)
Make synchronize-panes a pane option and add -U flag to set-option to unset an option on all panes. GitHub issue 2491 from Rostislav Nesin.
Revision 1.137 / (download) - annotate - [select for diffs], Tue Jun 16 08:18:34 2020 UTC (3 years, 11 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE,
OPENBSD_6_8
Changes since 1.136: +2 -11 lines
Diff to previous 1.136 (colored) to selected 1.64 (colored)
d and D keys to reset to default in customize mode.
Revision 1.136 / (download) - annotate - [select for diffs], Sat May 16 16:50:55 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.135: +1 -2 lines
Diff to previous 1.135 (colored) to selected 1.64 (colored)
Move lazy resize from the pane to the window, there is no point in resizing the window unless it is the current window, and if we do and don't resize the pane until later there are problems if the size changes from A to B then back to A.
Revision 1.135 / (download) - annotate - [select for diffs], Sat May 16 16:02:24 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.134: +11 -207 lines
Diff to previous 1.134 (colored) to selected 1.64 (colored)
Add a customize mode where keys and options may be browsed and changed, includes adding a brief description of each option. Bound to "C" by default.
Revision 1.134 / (download) - annotate - [select for diffs], Sat May 16 15:01:31 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.133: +29 -30 lines
Diff to previous 1.133 (colored) to selected 1.64 (colored)
Drop having a separate type for style options and make them all strings, which allows formats to be expanded. Any styles without a '#{' are still validated when they are set but any with a '#{' are not. Formats are not expanded usefully in many cases yet, that will be changed later. To make this work, a few other changes: - set-option -a with a style option automatically appends a ",". - OSC 10 and 11 don't set the window-style option anymore, instead the fg and bg are stored in the pane struct and act as the defaults that can be overridden by window-style. - status-fg and -bg now override status-style instead of trying to keep them in sync.
Revision 1.133 / (download) - annotate - [select for diffs], Mon Apr 13 20:54:15 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE,
OPENBSD_6_7
Changes since 1.132: +1 -2 lines
Diff to previous 1.132 (colored) to selected 1.64 (colored)
Missed a few warnings in previous.
Revision 1.132 / (download) - annotate - [select for diffs], Mon Apr 13 20:51:57 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.131: +5 -5 lines
Diff to previous 1.131 (colored) to selected 1.64 (colored)
Make client -c and -t handling common in cmd-queue.c and try to be clearer about whether the client is the target client (must have a session) or not.
Revision 1.131 / (download) - annotate - [select for diffs], Mon Apr 13 10:59:58 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.130: +7 -7 lines
Diff to previous 1.130 (colored) to selected 1.64 (colored)
Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make its use more clearly defined and preparation for some future work).
Revision 1.130 / (download) - annotate - [select for diffs], Mon Apr 13 08:26:27 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.129: +5 -5 lines
Diff to previous 1.129 (colored) to selected 1.64 (colored)
Make struct cmd local to cmd.c and move it out of tmux.h.
Revision 1.129 / (download) - annotate - [select for diffs], Mon Apr 13 07:25:33 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.128: +4 -4 lines
Diff to previous 1.128 (colored) to selected 1.64 (colored)
Change so that the appropriate hooks for windows and panes belong to pane/window options rather than all being session options. This is useful for example to create a pane that is automatically closed on some condition. From Anindya Mukherjee.
Revision 1.128 / (download) - annotate - [select for diffs], Tue Mar 17 11:10:12 2020 UTC (4 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.127: +8 -1 lines
Diff to previous 1.127 (colored) to selected 1.64 (colored)
Ignore default-shell (and use /bin/sh) if it invalid not just if it is tmux itself, also refuse to set the option to something invalid in the first place. GitHub issue 2120.
Revision 1.127 / (download) - annotate - [select for diffs], Thu Jun 20 11:59:59 2019 UTC (4 years, 11 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE,
OPENBSD_6_6
Changes since 1.126: +8 -7 lines
Diff to previous 1.126 (colored) to selected 1.64 (colored)
Add a per-pane option set. Pane options inherit from window options (so 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.
Revision 1.126 / (download) - annotate - [select for diffs], Thu Jun 20 07:41:29 2019 UTC (4 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.125: +7 -50 lines
Diff to previous 1.125 (colored) to selected 1.64 (colored)
Add a helper function to work out option table from name.
Revision 1.125 / (download) - annotate - [select for diffs], Fri Apr 26 11:38:51 2019 UTC (5 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.124: +35 -6 lines
Diff to previous 1.124 (colored) to selected 1.64 (colored)
Merge hooks into options and make each one an array option. This allows 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).
Revision 1.124 / (download) - annotate - [select for diffs], Tue Apr 23 20:36:55 2019 UTC (5 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.123: +1 -3 lines
Diff to previous 1.123 (colored) to selected 1.64 (colored)
Indicate an array option with a flag rather than a special type so that in future will not have to be strings.
Revision 1.123 / (download) - annotate - [select for diffs], Mon Mar 18 21:46:01 2019 UTC (5 years, 2 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE,
OPENBSD_6_5
Changes since 1.122: +13 -12 lines
Diff to previous 1.122 (colored) to selected 1.64 (colored)
The individual -fg, -bg and -attr options have been deprecated (in favour of -style), undocumented and hidden from show-options since 2014. Remove them, except for status-fg and status-bg.
Revision 1.122 / (download) - annotate - [select for diffs], Mon Mar 18 11:58:40 2019 UTC (5 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.121: +5 -7 lines
Diff to previous 1.121 (colored) to selected 1.64 (colored)
Make array options a sparse tree instead of an array of char * and remove the size limit.
Revision 1.121 / (download) - annotate - [select for diffs], Sat Mar 16 17:14:07 2019 UTC (5 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.120: +2 -2 lines
Diff to previous 1.120 (colored) to selected 1.64 (colored)
Tidy and rename some bits of status line code.
Revision 1.120 / (download) - annotate - [select for diffs], Thu Oct 18 08:38:01 2018 UTC (5 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.119: +14 -3 lines
Diff to previous 1.119 (colored) to selected 1.64 (colored)
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.
Revision 1.119 / (download) - annotate - [select for diffs], Fri Dec 22 10:18:51 2017 UTC (6 years, 5 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE,
OPENBSD_6_4,
OPENBSD_6_3_BASE,
OPENBSD_6_3
Changes since 1.118: +4 -2 lines
Diff to previous 1.118 (colored) to selected 1.64 (colored)
Do not try to set default value on user options (they don't have one), from Charles Howard in GitHub issue 1161.
Revision 1.118 / (download) - annotate - [select for diffs], Thu Sep 7 13:18:44 2017 UTC (6 years, 9 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE,
OPENBSD_6_2
Changes since 1.117: +2 -2 lines
Diff to previous 1.117 (colored) to selected 1.64 (colored)
Do not fail if unset an option that is already unset, reported by Thomas Sattler.
Revision 1.117 / (download) - annotate - [select for diffs], Fri Jun 23 15:36:52 2017 UTC (6 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.116: +7 -1 lines
Diff to previous 1.116 (colored) to selected 1.64 (colored)
Add user-keys option to allow user-defined keys to be set, from Dan Aloni.
Revision 1.116 / (download) - annotate - [select for diffs], Wed May 31 17:56:48 2017 UTC (7 years ago) by nicm
Branch: MAIN
Changes since 1.115: +2 -2 lines
Diff to previous 1.115 (colored) to selected 1.64 (colored)
Style and spacing nits.
Revision 1.115 / (download) - annotate - [select for diffs], Wed May 10 13:05:41 2017 UTC (7 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.114: +36 -26 lines
Diff to previous 1.114 (colored) to selected 1.64 (colored)
Expand formats in option names and add -F flag to do so in option values as well.
Revision 1.114 / (download) - annotate - [select for diffs], Sat Apr 22 10:22:39 2017 UTC (7 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.113: +4 -4 lines
Diff to previous 1.113 (colored) to selected 1.64 (colored)
Get rid of the extra layer of flags and cmd_prepare() and just store the CMD_FIND_* flags in the cmd_entry and call it for the command. Commands with special requirements call it themselves and update the target for hooks to use.
Revision 1.113 / (download) - annotate - [select for diffs], Sat Apr 22 06:13:30 2017 UTC (7 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.112: +18 -12 lines
Diff to previous 1.112 (colored) to selected 1.64 (colored)
Memory leaks, from David CARLIER.
Revision 1.112 / (download) - annotate - [select for diffs], Thu Feb 16 10:53:25 2017 UTC (7 years, 3 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE,
OPENBSD_6_1
Changes since 1.111: +2 -2 lines
Diff to previous 1.111 (colored) to selected 1.64 (colored)
Style nits.
Revision 1.111 / (download) - annotate - [select for diffs], Fri Feb 3 21:01:02 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.110: +3 -1 lines
Diff to previous 1.110 (colored) to selected 1.64 (colored)
Cache status line position to reduce option lookups during output.
Revision 1.110 / (download) - annotate - [select for diffs], Wed Jan 25 23:50:51 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.109: +5 -3 lines
Diff to previous 1.109 (colored) to selected 1.64 (colored)
Clear option before adding to array if no -a, reported by Michael Nickerson.
Revision 1.109 / (download) - annotate - [select for diffs], Tue Jan 24 20:24:54 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.108: +16 -16 lines
Diff to previous 1.108 (colored) to selected 1.64 (colored)
Fix set -u on array options.
Revision 1.108 / (download) - annotate - [select for diffs], Tue Jan 24 19:11:46 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.107: +13 -7 lines
Diff to previous 1.107 (colored) to selected 1.64 (colored)
If given an array option without an index either show or set all items, and support -a for array options. Allow the separator for set to be specified in the options table (will be used for backwards compatibility later).
Revision 1.107 / (download) - annotate - [select for diffs], Mon Jan 16 14:49:14 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.106: +5 -5 lines
Diff to previous 1.106 (colored) to selected 1.64 (colored)
getopt() has a struct option so just return to using options_entry.
Revision 1.106 / (download) - annotate - [select for diffs], Sun Jan 15 20:50:34 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.105: +5 -1 lines
Diff to previous 1.105 (colored) to selected 1.64 (colored)
-q flag now needs to be checked in a couple more places.
Revision 1.105 / (download) - annotate - [select for diffs], Sun Jan 15 20:48:41 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.104: +210 -378 lines
Diff to previous 1.104 (colored) to selected 1.64 (colored)
Major tidy up and rework of options tree and set-option/show-options commands this pushes more of the code into options.c and ties it more closely to the options table rather than having an unnecessary split. Also add support for array options (will be used later). Only (intentional) user visible change is that show-options output is now passed through vis(3) with VIS_DQ so quotes are escaped.
Revision 1.104 / (download) - annotate - [select for diffs], Thu Jan 12 15:36:35 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.103: +11 -23 lines
Diff to previous 1.103 (colored) to selected 1.64 (colored)
Simplify appending to string options.
Revision 1.103 / (download) - annotate - [select for diffs], Wed Jan 11 14:56:44 2017 UTC (7 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.102: +3 -5 lines
Diff to previous 1.102 (colored) to selected 1.64 (colored)
Some tidying and tweaks to options code.
Revision 1.102 / (download) - annotate - [select for diffs], Fri Nov 4 18:56:25 2016 UTC (7 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.101: +3 -1 lines
Diff to previous 1.101 (colored) to selected 1.64 (colored)
Do not try to set the CHANGED flag on windows with no active pane, fixes problem reported by Nelo-T Wallus.
Revision 1.101 / (download) - annotate - [select for diffs], Sun Oct 16 19:04:05 2016 UTC (7 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.100: +83 -83 lines
Diff to previous 1.100 (colored) to selected 1.64 (colored)
Mass rename struct cmd_q to struct cmdq_item and related.
Revision 1.100 / (download) - annotate - [select for diffs], Fri Oct 14 22:14:22 2016 UTC (7 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.99: +3 -3 lines
Diff to previous 1.99 (colored) to selected 1.64 (colored)
Add CMD_AFTERHOOK flag to the easy commands that don't need any special handling.
Revision 1.99 / (download) - annotate - [select for diffs], Mon Oct 10 21:51:39 2016 UTC (7 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.98: +31 -31 lines
Diff to previous 1.98 (colored) to selected 1.64 (colored)
Add static in cmd-* and fix a few other nits.
Revision 1.98 / (download) - annotate - [select for diffs], Sun Oct 9 07:58:35 2016 UTC (7 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.97: +20 -3 lines
Diff to previous 1.97 (colored) to selected 1.64 (colored)
Handle NULL window or session for user options.
Revision 1.97 / (download) - annotate - [select for diffs], Mon Sep 26 09:02:34 2016 UTC (7 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.96: +16 -11 lines
Diff to previous 1.96 (colored) to selected 1.64 (colored)
Support set -a (append) with user options, suggested by Xandor Schiefer.
Revision 1.96 / (download) - annotate - [select for diffs], Mon May 30 09:50:20 2016 UTC (8 years ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE,
OPENBSD_6_0
Changes since 1.95: +6 -1 lines
Diff to previous 1.95 (colored) to selected 1.64 (colored)
Cache the window styles and do not look up the window-style options unless they have changed.
Revision 1.95 / (download) - annotate - [select for diffs], Fri Apr 29 15:00:48 2016 UTC (8 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.94: +7 -1 lines
Diff to previous 1.94 (colored) to selected 1.64 (colored)
Add option to include status text in the pane borders. If pane-border-status is set to "top" or "bottom" (rather than "off"), every pane has a permanent top or bottom border containing the text from pane-border-format. Based on a diff sent long ago by Jonathan Slenders, mostly rewritten and simplified by me.
Revision 1.94 / (download) - annotate - [select for diffs], Thu Mar 3 14:15:22 2016 UTC (8 years, 3 months ago) by nicm
Branch: MAIN
Changes since 1.93: +20 -20 lines
Diff to previous 1.93 (colored) to selected 1.64 (colored)
show-* and set-* need to handle a missing target.
Revision 1.93 / (download) - annotate - [select for diffs], Tue Jan 19 15:59:12 2016 UTC (8 years, 4 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE,
OPENBSD_5_9
Changes since 1.92: +2 -2 lines
Diff to previous 1.92 (colored) to selected 1.64 (colored)
I no longer use my SourceForge address so replace it.
Revision 1.92 / (download) - annotate - [select for diffs], Mon Dec 14 00:31:54 2015 UTC (8 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.91: +7 -3 lines
Diff to previous 1.91 (colored) to selected 1.64 (colored)
Instead of combined flags for -c, -s, -t, split into different sets using an enum and simplify the parsing code.
Revision 1.91 / (download) - annotate - [select for diffs], Sun Dec 13 21:53:57 2015 UTC (8 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.90: +17 -11 lines
Diff to previous 1.90 (colored) to selected 1.64 (colored)
Use member names in cmd_entry definitions so I stop getting confused about the order.
Revision 1.90 / (download) - annotate - [select for diffs], Sun Dec 13 14:32:38 2015 UTC (8 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.89: +12 -22 lines
Diff to previous 1.89 (colored) to selected 1.64 (colored)
Instead of every command resolving the target (-t or -s) itself, prepare the state (client, session, winlink, pane) for it it before entering the command. Each command provides some flags that tell the prepare step what it is expecting. This is a requirement for having hooks on commands (for example, if you hook "select-window -t1:2", the hook command should to operate on window 1:2 not whatever it thinks is the current window), and should allow some other target improvements. The old cmd_find_* functions remain for the moment but that layer will be dropped later. Joint work with Thomas Adam.
Revision 1.89 / (download) - annotate - [select for diffs], Sat Dec 12 18:32:24 2015 UTC (8 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.88: +5 -1 lines
Diff to previous 1.88 (colored) to selected 1.64 (colored)
Add key-table option to set the default key table for a session, allows different key bindings for different sessions and a few other things.
Revision 1.88 / (download) - annotate - [select for diffs], Sat Dec 12 18:19:00 2015 UTC (8 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.87: +3 -2 lines
Diff to previous 1.87 (colored) to selected 1.64 (colored)
Allow prefix and prefix2 to be set to None to disable (useful if you would rather bind the prefix in the root table).
Revision 1.87 / (download) - annotate - [select for diffs], Fri Nov 20 12:01:19 2015 UTC (8 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.86: +8 -8 lines
Diff to previous 1.86 (colored) to selected 1.64 (colored)
Instead of separate tables for different types of options, give each option a scope type (server, session, window) in one table.
Revision 1.86 / (download) - annotate - [select for diffs], Wed Nov 18 14:27:44 2015 UTC (8 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.85: +8 -8 lines
Diff to previous 1.85 (colored) to selected 1.64 (colored)
Use __unused rather than rolling our own.
Revision 1.85 / (download) - annotate - [select for diffs], Thu Nov 12 11:05:34 2015 UTC (8 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.84: +2 -2 lines
Diff to previous 1.84 (colored) to selected 1.64 (colored)
Support UTF-8 key bindings by expanding the key type from int to uint64_t and converting UTF-8 to Unicode on input and the reverse on output. (This allows key bindings, there are still omissions - the largest being that the various prompts do not accept UTF-8.)
Revision 1.84 / (download) - annotate - [select for diffs], Tue Oct 27 15:58:42 2015 UTC (8 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.83: +13 -13 lines
Diff to previous 1.83 (colored) to selected 1.64 (colored)
Move struct options into options.c.
Revision 1.83 / (download) - annotate - [select for diffs], Mon Sep 14 13:22:02 2015 UTC (8 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.82: +1 -2 lines
Diff to previous 1.82 (colored) to selected 1.64 (colored)
Remove some extra blank lines.
Revision 1.82 / (download) - annotate - [select for diffs], Sat Aug 29 08:30:54 2015 UTC (8 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.81: +3 -1 lines
Diff to previous 1.81 (colored) to selected 1.64 (colored)
Move alerts onto events rather than checking every loop.
Revision 1.81 / (download) - annotate - [select for diffs], Sat Aug 29 00:29:15 2015 UTC (8 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.80: +2 -4 lines
Diff to previous 1.80 (colored) to selected 1.64 (colored)
Better take on reducing the name timer. Again check for name changes in the main loop after events that may have changed the pane, but do so at most once every 500 millis. If the pane changed too soon, use a timer to ensure that a check happens later.
Revision 1.80 / (download) - annotate - [select for diffs], Fri Aug 28 16:10:46 2015 UTC (8 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.79: +3 -1 lines
Diff to previous 1.79 (colored) to selected 1.64 (colored)
Revert previous; we do need a timer, until I have a better idea. We can't do the name check every loop, because that is too expensive, and we can't make sure it only happens infrequently because we have no idea when the next change will happen.
Revision 1.79 / (download) - annotate - [select for diffs], Fri Aug 28 15:51:48 2015 UTC (8 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.78: +2 -4 lines
Diff to previous 1.78 (colored) to selected 1.64 (colored)
We now only checking for name changes when the active pane has changed, but that can only happen when we have already been woken up by a read event, so there is no need for a timer, we can just check the changed flag on the end of that read event (we already loop over the windows to check for bells etc anyway).
Revision 1.78 / (download) - annotate - [select for diffs], Fri Aug 28 13:12:20 2015 UTC (8 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.77: +2 -2 lines
Diff to previous 1.77 (colored) to selected 1.64 (colored)
Per-session timers for locking, and remove the global one-second timer.
Revision 1.77 / (download) - annotate - [select for diffs], Fri Aug 28 12:16:28 2015 UTC (8 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.76: +5 -2 lines
Diff to previous 1.76 (colored) to selected 1.64 (colored)
Run status update on a per-client timer at status-interval.
Revision 1.76 / (download) - annotate - [select for diffs], Mon Jul 27 08:45:45 2015 UTC (8 years, 10 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE,
OPENBSD_5_8
Changes since 1.75: +6 -3 lines
Diff to previous 1.75 (colored) to selected 1.64 (colored)
Make -q suppress ambiguous option warnings too, from Cam Hutchison.
Revision 1.75 / (download) - annotate - [select for diffs], Thu Jun 4 14:29:33 2015 UTC (9 years ago) by nicm
Branch: MAIN
Changes since 1.74: +15 -6 lines
Diff to previous 1.74 (colored) to selected 1.64 (colored)
Make unsetting a global option restore it to the default. Diff lying around for a while, I have forgotten who suggested it :-/.
Revision 1.74 / (download) - annotate - [select for diffs], Fri Apr 24 23:17:11 2015 UTC (9 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.73: +3 -5 lines
Diff to previous 1.73 (colored) to selected 1.64 (colored)
Convert clients list into a TAILQ.
Revision 1.73 / (download) - annotate - [select for diffs], Fri Apr 24 21:38:18 2015 UTC (9 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.72: +29 -17 lines
Diff to previous 1.72 (colored) to selected 1.64 (colored)
Allow choice options (multiple states) to be toggled between states 0 and 1.
Revision 1.72 / (download) - annotate - [select for diffs], Wed Apr 22 15:30:11 2015 UTC (9 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.71: +2 -4 lines
Diff to previous 1.71 (colored) to selected 1.64 (colored)
Change the windows array into an RB tree and fix some places where we were only looking at the first winlink for a window in a session.
Revision 1.71 / (download) - annotate - [select for diffs], Mon Oct 20 22:29:25 2014 UTC (9 years, 7 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE,
OPENBSD_5_7
Changes since 1.70: +1 -3 lines
Diff to previous 1.70 (colored) to selected 1.64 (colored)
Instead of setting up the default keys by building the key struct directly with a helper function in the cmd_entry, include a table of bind-key commands and pass them through the command parser and a temporary cmd_q. As well as being smaller, this will allow default bindings to be command sequences which will probably be needed soon.
Revision 1.70 / (download) - annotate - [select for diffs], Mon Sep 1 21:50:18 2014 UTC (9 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.69: +3 -3 lines
Diff to previous 1.69 (colored) to selected 1.64 (colored)
Various minor style and spacing nits.
Revision 1.69 / (download) - annotate - [select for diffs], Thu Apr 17 14:45:49 2014 UTC (10 years, 1 month ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE,
OPENBSD_5_6
Changes since 1.68: +17 -9 lines
Diff to previous 1.68 (colored) to selected 1.64 (colored)
Some more long lines.
Revision 1.68 / (download) - annotate - [select for diffs], Thu Apr 17 07:55:43 2014 UTC (10 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.67: +1 -13 lines
Diff to previous 1.67 (colored) to selected 1.64 (colored)
Remove the "info" message mechanism, this was only used for about five mostly useless and annoying messages. Change those commands to silence on success like all the others. Still accept the -q command line flag and "quiet" server option for now.
Revision 1.67 / (download) - annotate - [select for diffs], Thu Apr 17 07:51:38 2014 UTC (10 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.66: +19 -9 lines
Diff to previous 1.66 (colored) to selected 1.64 (colored)
Extend the -q flag to set-option to suppress errors about unknown options - this will allow options to be removed more easily.
Revision 1.66 / (download) - annotate - [select for diffs], Mon Feb 17 18:12:47 2014 UTC (10 years, 3 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_5_BASE,
OPENBSD_5_5
Changes since 1.65: +5 -3 lines
Diff to previous 1.65 (colored) to selected 1.64 (colored)
Don't crash when given a invalid colour, reported by Felix Rosencrantz, fix from Thomas Adam.
Revision 1.65 / (download) - annotate - [select for diffs], Fri Feb 14 13:59:01 2014 UTC (10 years, 3 months ago) by nicm
Branch: MAIN
Changes since 1.64: +2 -2 lines
Diff to previous 1.64 (colored)
Style nit - no space between function name and bracket.
Revision 1.64 / (download) - annotate - [selected], Tue Jan 28 23:07:09 2014 UTC (10 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.63: +29 -1 lines
Diff to previous 1.63 (colored)
Allow replacing each of the many sets of separate foo-{fg,bg,attr} options with a single foo-style option. For example: set -g status-fg yellow set -g status-bg red set -g status-attr blink Becomes: set -g status-style fg=yellow,bg=red,blink The -a flag to set can be used to add to rather than replace a style. So: set -g status-bg red Becomes: set -ag status-style bg=red Currently this is fully backwards compatible (all *-{fg,bg,attr} options remain) but the plan is to deprecate them over time. From Tiago Cunha.
Revision 1.63 / (download) - annotate - [select for diffs], Thu Oct 10 12:00:23 2013 UTC (10 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.62: +1 -3 lines
Diff to previous 1.62 (colored) to selected 1.64 (colored)
Remove the barely-used and unnecessary command check() function.
Revision 1.62 / (download) - annotate - [select for diffs], Fri Jul 5 15:10:38 2013 UTC (10 years, 11 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE,
OPENBSD_5_4
Changes since 1.61: +13 -3 lines
Diff to previous 1.61 (colored) to selected 1.64 (colored)
Clarify error messages when setting options, from Thomas Adam.
Revision 1.61 / (download) - annotate - [select for diffs], Sun Mar 24 09:55:02 2013 UTC (11 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.60: +16 -6 lines
Diff to previous 1.60 (colored) to selected 1.64 (colored)
Add a -o option to set-option to prevent setting an option already set, from Thiago Padilha.
Revision 1.60 / (download) - annotate - [select for diffs], Sun Mar 24 09:54:10 2013 UTC (11 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.59: +62 -59 lines
Diff to previous 1.59 (colored) to selected 1.64 (colored)
Add a command queue to standardize and simplify commands that call other commands and allow a command to block execution of subsequent commands. This allows run-shell and if-shell to be synchronous which has been much requested. Each client has a default command queue and commands are consumed one at a time from it. A command may suspend execution from the queue by returning CMD_RETURN_WAIT and then resume it by calling cmd_continue() - for example run-shell does this from the callback that is fired after the job is freed. When the command queue becomes empty, command clients are automatically exited (unless attaching). A callback is also fired - this is used for nested commands in, for example, if-shell which can block execution of the client's cmdq until a new cmdq becomes empty. Also merge all the old error/info/print functions together and lose the old curclient/cmdclient distinction - a cmdq is bound to one client (or none if in the configuration file), this is a command client if c->session is NULL otherwise an attached client.
Revision 1.59 / (download) - annotate - [select for diffs], Thu Mar 21 16:17:01 2013 UTC (11 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.58: +66 -2 lines
Diff to previous 1.58 (colored) to selected 1.64 (colored)
Add user options, prefixed with @. May be set to any arbitrary string.
Revision 1.58 / (download) - annotate - [select for diffs], Thu Mar 21 16:15:52 2013 UTC (11 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.57: +2 -2 lines
Diff to previous 1.57 (colored) to selected 1.64 (colored)
Add -v to set and setw to show only option value.
Revision 1.57 / (download) - annotate - [select for diffs], Wed Jul 11 07:10:15 2012 UTC (11 years, 11 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE,
OPENBSD_5_3,
OPENBSD_5_2_BASE,
OPENBSD_5_2
Changes since 1.56: +12 -12 lines
Diff to previous 1.56 (colored) to selected 1.64 (colored)
Make command exec functions return an enum rather than -1/0/1 values and add a new value to mean "leave client running but don't attach" to fix problems with using some commands in a command sequence. Most of the work by Thomas Adam, problem reported by "jspenguin" on SF bug 3535531.
Revision 1.56 / (download) - annotate - [select for diffs], Tue Jul 10 11:53:01 2012 UTC (11 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.55: +2 -2 lines
Diff to previous 1.55 (colored) to selected 1.64 (colored)
xfree is not particularly helpful, remove it. From Thomas Adam.
Revision 1.55 / (download) - annotate - [select for diffs], Sun Apr 8 06:47:26 2012 UTC (12 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.54: +14 -1 lines
Diff to previous 1.54 (colored) to selected 1.64 (colored)
Do not fire name timer when automatic-rename is off, from Tim Ruehsen a while ago.
Revision 1.54 / (download) - annotate - [select for diffs], Sat Mar 17 21:33:33 2012 UTC (12 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.53: +11 -8 lines
Diff to previous 1.53 (colored) to selected 1.64 (colored)
Add -q option to set-option to turn off info message, from marcel partap.
Revision 1.53 / (download) - annotate - [select for diffs], Sat Feb 25 12:57:42 2012 UTC (12 years, 3 months ago) by nicm
Branch: MAIN
Changes since 1.52: +2 -38 lines
Diff to previous 1.52 (colored) to selected 1.64 (colored)
Allow a single option to be specified to show-options to show just that option.
Revision 1.52 / (download) - annotate - [select for diffs], Sat Jan 21 08:40:09 2012 UTC (12 years, 4 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_1_BASE,
OPENBSD_5_1
Changes since 1.51: +12 -24 lines
Diff to previous 1.51 (colored) to selected 1.64 (colored)
Drop the ability to have a list of keys in the prefix in favour of two separate options, prefix and prefix2. This simplifies the code and gets rid the data options type which was only used for this one option. Also add a -2 flag to send-prefix to send the secondary prefix key, fixing a cause of minor irritation. People who want three prefix keys are out of luck :-).
Revision 1.51 / (download) - annotate - [select for diffs], Tue Apr 5 19:37:01 2011 UTC (13 years, 2 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_0_BASE,
OPENBSD_5_0
Changes since 1.50: +2 -2 lines
Diff to previous 1.50 (colored) to selected 1.64 (colored)
Add a flag to cmd_find_session so that attach-session can prefer unattached sessions when choosing the most recently used (if -t is not given). Suggested by claudio@.
Revision 1.50 / (download) - annotate - [select for diffs], Tue Mar 29 21:09:13 2011 UTC (13 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.49: +66 -41 lines
Diff to previous 1.49 (colored) to selected 1.64 (colored)
For convenience, work out what type of option is being set by name regardless of the -s or -w flags (these remain documented however).
Revision 1.49 / (download) - annotate - [select for diffs], Tue Mar 29 21:07:08 2011 UTC (13 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.48: +1 -14 lines
Diff to previous 1.48 (colored) to selected 1.64 (colored)
Checking for particular options and redrawing is not necessary as we already redraw unconditionally.
Revision 1.48 / (download) - annotate - [select for diffs], Tue Mar 29 20:31:22 2011 UTC (13 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.47: +2 -6 lines
Diff to previous 1.47 (colored) to selected 1.64 (colored)
Update an out-of-date and inaccurate comment.
Revision 1.47 / (download) - annotate - [select for diffs], Wed Jan 26 01:54:56 2011 UTC (13 years, 4 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE,
OPENBSD_4_9
Changes since 1.46: +3 -22 lines
Diff to previous 1.46 (colored) to selected 1.64 (colored)
Simplify the way jobs work and drop the persist type, so all jobs are fire-and-forget. Status jobs now managed with two trees of output (new and old), rather than storing the output in the jobs themselves. When the status line is processed any jobs which don't appear in the new tree are started and the output from the old tree displayed. When a job finishes it updates the new tree with its output and that is used for any subsequent redraws. When the status interval expires, the new tree is moved to the old so that all jobs are run again. This fixes the "#(echo %H:%M:%S)" problem which would lead to thousands of identical persistent jobs and high memory use (this can still be achieved by adding "sleep 30" but that is much less likely to happen by accident).
Revision 1.46 / (download) - annotate - [select for diffs], Tue Jan 4 02:03:41 2011 UTC (13 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.45: +13 -2 lines
Diff to previous 1.45 (colored) to selected 1.64 (colored)
Now that parsing is common, merge some of the small, related commands together to use the same code. Also add some arguments (such as -n and -p) to some commands to match existing commands.
Revision 1.45 / (download) - annotate - [select for diffs], Tue Jan 4 01:58:12 2011 UTC (13 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.44: +2 -2 lines
Diff to previous 1.44 (colored) to selected 1.64 (colored)
argc will be 1 not 2 with no option value.
Revision 1.44 / (download) - annotate - [select for diffs], Tue Jan 4 00:42:47 2011 UTC (13 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.43: +110 -97 lines
Diff to previous 1.43 (colored) to selected 1.64 (colored)
Clean up and simplify tmux command argument parsing. Originally, tmux commands were parsed in the client process into a struct with the command data which was then serialised and sent to the server to be executed. The parsing was later moved into the server (an argv was sent from the client), but the parse step and intermediate struct was kept. This change removes that struct and the separate parse step. Argument parsing and printing is now common to all commands (in arguments.c) with each command left with just an optional check function (to validate the arguments at parse time), the exec function and a function to set up any key bindings (renamed from the old init function). This is overall more simple and consistent. There should be no changes to any commands behaviour or syntax although as this touches every command please watch for any unexpected changes.
Revision 1.43 / (download) - annotate - [select for diffs], Sat Jan 1 16:51:21 2011 UTC (13 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.42: +197 -368 lines
Diff to previous 1.42 (colored) to selected 1.64 (colored)
Move the user-visible parts of all options (names, types, limit, default values) together into one set of tables in options-table.c. Also clean up and simplify cmd-set-options.c and move a common print function into option-table.c.
Revision 1.42 / (download) - annotate - [select for diffs], Thu Dec 30 23:16:18 2010 UTC (13 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.41: +3 -3 lines
Diff to previous 1.41 (colored) to selected 1.64 (colored)
Change from a per-session stack of buffers to one global stack which is much more convenient and also simplifies lot of code. This renders copy-buffer useless and makes buffer-limit now a server option. By Tiago Cunha.
Revision 1.41 / (download) - annotate - [select for diffs], Sun Dec 19 18:35:08 2010 UTC (13 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.40: +3 -1 lines
Diff to previous 1.40 (colored) to selected 1.64 (colored)
Add other-pane-height and other-pane-width options, allowing the width or height of the smaller panes in the main-horizontal and main-vertical layouts to be set. Mostly from David Goodlad.
Revision 1.40 / (download) - annotate - [select for diffs], Mon Dec 6 22:51:02 2010 UTC (13 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.39: +3 -1 lines
Diff to previous 1.39 (colored) to selected 1.64 (colored)
Add an option to alert (monitor) for silence (lack of activity) in a window. From Thomas Adam.
Revision 1.39 / (download) - annotate - [select for diffs], Sun Sep 26 20:43:30 2010 UTC (13 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.38: +3 -1 lines
Diff to previous 1.38 (colored) to selected 1.64 (colored)
Two new options: - server option "exit-unattached" makes the server exit when no clients are attached, even if sessions are present; - session option "destroy-unattached" destroys a session once no clients are attached to it. These are useful for preventing tmux remaining in the background where it is undesirable and when using tmux as a login shell to keep a limit on new sessions.
Revision 1.38 / (download) - annotate - [select for diffs], Wed Sep 1 21:06:51 2010 UTC (13 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.37: +2 -1 lines
Diff to previous 1.37 (colored) to selected 1.64 (colored)
Reset running jobs when the status line is enabled or disabled as well, some people have it bound to a key.
Revision 1.37 / (download) - annotate - [select for diffs], Sun Jun 27 00:22:22 2010 UTC (13 years, 11 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_8_BASE,
OPENBSD_4_8
Changes since 1.36: +2 -1 lines
Diff to previous 1.36 (colored) to selected 1.64 (colored)
New option, detach-on-destroy, to set what happens to a client when the session it is attached to is destroyed. If on (the default), it is detached; if off, it is switched to the most recently active session.
Revision 1.36 / (download) - annotate - [select for diffs], Fri May 14 19:03:09 2010 UTC (14 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.35: +4 -1 lines
Diff to previous 1.35 (colored) to selected 1.64 (colored)
Colour+attribute options for status line alerts, from Alex Alexander.
Revision 1.35 / (download) - annotate - [select for diffs], Mon Feb 22 20:41:16 2010 UTC (14 years, 3 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE,
OPENBSD_4_7
Changes since 1.34: +2 -1 lines
Diff to previous 1.34 (colored) to selected 1.64 (colored)
Option to set the characters considered word separators in copy mode, from Micah Cowan.
Revision 1.34 / (download) - annotate - [select for diffs], Mon Feb 8 00:14:38 2010 UTC (14 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.33: +2 -1 lines
Diff to previous 1.33 (colored) to selected 1.64 (colored)
Add an option to disable the smcup/rmcup alternate screen behaviour inside tmux. From clemens fischer.
Revision 1.33 / (download) - annotate - [select for diffs], Thu Feb 4 18:20:16 2010 UTC (14 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.32: +2 -1 lines
Diff to previous 1.32 (colored) to selected 1.64 (colored)
Option to display the active pane in a different colour with the display-panes command. From Paul Hoffman, thanks.
Revision 1.32 / (download) - annotate - [select for diffs], Sun Jan 3 12:51:05 2010 UTC (14 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.31: +5 -1 lines
Diff to previous 1.31 (colored) to selected 1.64 (colored)
Options to set the colour of the pane borders, with different colours for the active pane.
Revision 1.31 / (download) - annotate - [select for diffs], Mon Dec 14 10:43:41 2009 UTC (14 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.30: +2 -1 lines
Diff to previous 1.30 (colored) to selected 1.64 (colored)
New server option, escape-time, to set the timeout used to detect if escapes are alone or part of a function key or meta sequence.
Revision 1.30 / (download) - annotate - [select for diffs], Fri Dec 11 13:58:48 2009 UTC (14 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.29: +2 -1 lines
Diff to previous 1.29 (colored) to selected 1.64 (colored)
Use quiet variable, and add missing sentinel to options array.
Revision 1.29 / (download) - annotate - [select for diffs], Thu Dec 10 09:16:52 2009 UTC (14 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.28: +11 -4 lines
Diff to previous 1.28 (colored) to selected 1.64 (colored)
Add "server options" which are server-wide and not bound to a session or window. Set and displayed with "set -s" and "show -s". Currently the only option is "quiet" (like command-line -q, allowing it to be set from .tmux.conf), but others will come along.
Revision 1.28 / (download) - annotate - [select for diffs], Thu Dec 3 22:50:10 2009 UTC (14 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.27: +13 -13 lines
Diff to previous 1.27 (colored) to selected 1.64 (colored)
Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last time now I've configured emacs to make them displayed in really annoying colours...
Revision 1.27 / (download) - annotate - [select for diffs], Thu Dec 3 17:44:02 2009 UTC (14 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.26: +337 -19 lines
Diff to previous 1.26 (colored) to selected 1.64 (colored)
Eliminate duplicate code and ease the passage for server-wide options by adding a -w flag to set-option and show-options and making setw and showw aliases to set -w and show -w. Note: setw and showw are still there, but now aliases for set -w and show -w.
Revision 1.26 / (download) - annotate - [select for diffs], Wed Nov 18 13:16:33 2009 UTC (14 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.25: +2 -1 lines
Diff to previous 1.25 (colored) to selected 1.64 (colored)
Add a per-client log of status line messages displayed while that client exists. A new message-limit session option sets the maximum number of entries and a command, show-messages, shows the log (bound to ~ by default). This (and prompt history) might be better as a single global log but until there are global options it is easier for them to be per client.
Revision 1.25 / (download) - annotate - [select for diffs], Fri Nov 13 19:53:29 2009 UTC (14 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.24: +6 -6 lines
Diff to previous 1.24 (colored) to selected 1.64 (colored)
Get rid of the ugly CMD_CHFLAG macro and use a const string (eg "dDU") in the command entry structs and a couple of functions to check/set the flags.
Revision 1.24 / (download) - annotate - [select for diffs], Sun Nov 1 23:20:37 2009 UTC (14 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.23: +32 -6 lines
Diff to previous 1.23 (colored) to selected 1.64 (colored)
Add a flag for jobs that shouldn't be freed after they've died and use it for status jobs, then only kill those jobs when status-left, status-right or set-titles-string is changed. Fixes problems with changing options from inside #().
Revision 1.23 / (download) - annotate - [select for diffs], Sat Oct 10 15:03:01 2009 UTC (14 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.22: +5 -2 lines
Diff to previous 1.22 (colored) to selected 1.64 (colored)
Rather than running status-left, status-right and window title #() with popen immediately every redraw, queue them up and run them in the background, starting each once every status-interval. The actual status line uses the output from the last run. This brings several advantages: - tmux itself may be called from inside #() without causing the server to hang; - likewise, sleep or similar doesn't cause the server to block; - commands aren't run excessively often when redrawing; - commands shared by status-left and status-right, or used multiple times, will only be run once. run-shell and if-shell still use system()/popen() but will be changed over to use this too later.
Revision 1.22 / (download) - annotate - [select for diffs], Sat Oct 10 14:51:16 2009 UTC (14 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.21: +2 -1 lines
Diff to previous 1.21 (colored) to selected 1.64 (colored)
New option, mouse-select-pane. If on, the mouse may be used to select the current pane. Suggested by sthen@ and also by someone else ages ago who I have forgotten.
Revision 1.21 / (download) - annotate - [select for diffs], Sat Oct 10 09:46:11 2009 UTC (14 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.20: +2 -1 lines
Diff to previous 1.20 (colored) to selected 1.64 (colored)
Support for individual session idle time locking. May be enabled by turning off the lock-server option (it is on by default). When this is off, each session locks when it has been idle for the lock-after-time setting. When on, the entire server locks when ALL sessions have been idle for their individual lock-after-time settings. This replaces one global-only option (lock-after-time) with another (lock-server), but the default behaviour is usually preferable so there don't seem to be many alternatives. Diff/idea largely from Thomas Adam, tweaked by me.
Revision 1.20 / (download) - annotate - [select for diffs], Wed Sep 23 06:18:47 2009 UTC (14 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.19: +2 -1 lines
Diff to previous 1.19 (colored) to selected 1.64 (colored)
Remove the internal tmux locking and instead detach each client and run the command specified by a new option "lock-command" (by default "lock -np") in each client. This means each terminal has to be unlocked individually but simplifies the code and allows the system password to be used to unlock. Note that the set-password command is gone, so it will need to be removed from configuration files, and the -U command line flag has been removed. This is the third protocol version change so again it is best to stop the tmux server before upgrading.
Revision 1.19 / (download) - annotate - [select for diffs], Tue Sep 22 12:38:10 2009 UTC (14 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.18: +4 -4 lines
Diff to previous 1.18 (colored) to selected 1.64 (colored)
Permit multiple prefix keys to be defined, separated by commas, for example: set -g prefix ^a,^b Any key in the list acts as the prefix. The send-prefix command always sends the first key in the list.
Revision 1.18 / (download) - annotate - [select for diffs], Fri Sep 18 15:19:27 2009 UTC (14 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.17: +2 -1 lines
Diff to previous 1.17 (colored) to selected 1.64 (colored)
New option, set-titles-string, to allow the window title to be specified (as for status-left/right) if set-titles is on. Also only update the title when the status line is being redrawn.
Revision 1.17 / (download) - annotate - [select for diffs], Tue Sep 1 13:09:49 2009 UTC (14 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.16: +2 -1 lines
Diff to previous 1.16 (colored) to selected 1.64 (colored)
When using tmux as a login shell, there is currently no way to specify a shell to be used as a login shell inside tmux, so add a default-shell session option. This sets the shell invoked as a login shell when the default-command option is empty. The default option value is whichever of $SHELL, getpwuid(getuid())'s pw_shell or /bin/sh is valid first. Based on a diff from martynas@, changed by me to be a session option rather than a window option.
Revision 1.16 / (download) - annotate - [select for diffs], Mon Aug 31 20:46:19 2009 UTC (14 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.15: +3 -1 lines
Diff to previous 1.15 (colored) to selected 1.64 (colored)
Add a new display-panes command, with two options (display-panes-colour and display-panes-time), which displays a visual indication of the number of each pane.
Revision 1.15 / (download) - annotate - [select for diffs], Thu Aug 13 20:11:58 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.14: +2 -1 lines
Diff to previous 1.14 (colored) to selected 1.64 (colored)
Add a base-index session option to specify the first index checked when looking for an index for a new window.
Revision 1.14 / (download) - annotate - [select for diffs], Tue Aug 11 12:53:37 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.13: +20 -20 lines
Diff to previous 1.13 (colored) to selected 1.64 (colored)
Add flags for 1+2 and 2 arguments to the generic target code, use it for cmd-set-environment/option/window-option and remove the generic options parsing.
Revision 1.13 / (download) - annotate - [select for diffs], Sat Aug 8 21:52:43 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.12: +2 -1 lines
Diff to previous 1.12 (colored) to selected 1.64 (colored)
Infrastructure and commands to manage the environment for processes started within tmux. There is a global environment, copied from the external environment when the server is started and each sesssion has an (initially empty) session environment which overrides it. New commands set-environment and show-environment manipulate or display the environments. A new session option, update-environment, is a space-separated list of variables which are updated from the external environment into the session environment every time a new session is created - the default is DISPLAY.
Revision 1.12 / (download) - annotate - [select for diffs], Sat Aug 8 20:36:42 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.11: +7 -1 lines
Diff to previous 1.11 (colored) to selected 1.64 (colored)
Options to set the colours and attributes for status-left/-right. From Thomas Adam, thanks.
Revision 1.11 / (download) - annotate - [select for diffs], Tue Aug 4 18:45:57 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.10: +5 -4 lines
Diff to previous 1.10 (colored) to selected 1.64 (colored)
Add a -a flag to set-option and set-window-option to append to an existing string value, useful for terminal-overrides.
Revision 1.10 / (download) - annotate - [select for diffs], Mon Aug 3 14:10:54 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.9: +3 -2 lines
Diff to previous 1.9 (colored) to selected 1.64 (colored)
Add a terminal-overrides session option allowing individual terminfo(5) entries to be overridden. The 88col/256col checks are now moved into the default setting and out of the code. Also remove a couple of old workarounds for xterm and rxvt which are no longer necessary (tmux can emulate them if missing).
Revision 1.9 / (download) - annotate - [select for diffs], Sun Jul 26 12:58:44 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.8: +1 -3 lines
Diff to previous 1.8 (colored) to selected 1.64 (colored)
Make all messages sent between the client and server fixed size. This is the first of two changes to make the protocol more resilient and less sensitive to other changes in the code, particularly with commands. The client now packs argv into a buffer and sends it to the server for parsing, rather than doing it itself and sending the parsed command data. As a side-effect this also removes a lot of now-unused command marshalling code. Mixing a server without this change and a client with or vice versa will cause tmux to hang or crash, please ensure that tmux is entirely killed before upgrading.
Revision 1.8 / (download) - annotate - [select for diffs], Mon Jul 20 14:32:09 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.7: +6 -1 lines
Diff to previous 1.7 (colored) to selected 1.64 (colored)
Add a status-justify option to allow the window list in the status line to be positioned at the left, centre, or right.
Revision 1.7 / (download) - annotate - [select for diffs], Sat Jul 18 14:59:25 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.6: +4 -1 lines
Diff to previous 1.6 (colored) to selected 1.64 (colored)
Add three new session options: visual-activity, visual-bell, visual-content. If these are enabled (and the monitor-activity, bell-actio and monitor-content options are configurated appropriately), when activity, a bell, or content is detected, a message is shown. Also tidy up the bell/activity/content code in server.c slightly and fix a couple of errors.
Revision 1.6 / (download) - annotate - [select for diffs], Wed Jul 15 07:50:34 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.5: +7 -7 lines
Diff to previous 1.5 (colored) to selected 1.64 (colored)
Having to update NSETOPTION/NSETWINDOWOPTION when adding new options is a bit annoying and it is only use for iterating, so use a sentinel to mark the end of each array instead. Different fix for a problem pointed out by Kalle Olavi Niemitalo.
Revision 1.5 / (download) - annotate - [select for diffs], Mon Jul 13 23:11:35 2009 UTC (14 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.4: +5 -5 lines
Diff to previous 1.4 (colored) to selected 1.64 (colored)
Having fixed flags for single-character getopt options is a bit hard to maintain and is only going to get worse as more are used. So instead, add a new uint64_t member to cmd_entry which is a bitmask of upper and lowercase options accepted by the command. This means new single character options can be used without the need to add it explicitly to the list.
Revision 1.4 / (download) - annotate - [select for diffs], Fri Jul 10 05:50:54 2009 UTC (14 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.3: +2 -1 lines
Diff to previous 1.3 (colored) to selected 1.64 (colored)
Add a default-terminal option to set the starting value of $TERM in new windows. This is "screen" by default and must be either that or something closely related. This does makes it easier to customise it if necessary.
Revision 1.3 / (download) - annotate - [select for diffs], Tue Jul 7 19:49:19 2009 UTC (14 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.2: +2 -2 lines
Diff to previous 1.2 (colored) to selected 1.64 (colored)
Rename the global options variables to be shorter and to make session options clear. No functional change, getting this out of the way to make later options changes easier.
Revision 1.2 / (download) - annotate - [select for diffs], Wed Jun 3 16:54:26 2009 UTC (15 years ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE,
OPENBSD_4_6
Changes since 1.1: +2 -1 lines
Diff to previous 1.1 (colored) to selected 1.64 (colored)
New session option, status-utf8, to control the interpretation of top-bit-set characters in status-left and status-right (if on, they are treated as UTF-8; otherwise passed through).
Revision 1.1 / (download) - annotate - [select for diffs], Mon Jun 1 22:58:49 2009 UTC (15 years ago) by nicm
Branch: MAIN
Diff to selected 1.64 (colored)
Import tmux, a terminal multiplexor allowing (among other things) a single terminal to be switched between several different windows and programs displayed on one terminal be detached from one terminal and moved to another. ok deraadt pirofti