Commit Graph

287 Commits (759efe1b3327a7244c03ecc7b90e0e3c49712d06)

Author SHA1 Message Date
nicm 759efe1b33 Add -e flag to set environment for popup, from Alexis Hildebrandt in
GitHub issue 2924.
2021-10-11 10:55:30 +00:00
nicm da05d05824 Fix some warnings. 2021-10-05 20:15:16 +00:00
nicm e06a4e041c Set mouse_x and mouse_y on the status line, GitHub issue 2913. 2021-10-05 17:23:13 +00:00
nicm 3d5a02bf45 Do not try to use NULL time values. 2021-10-05 12:45:02 +00:00
nicm d589be6c65 A couple more spacing fixes. 2021-08-20 20:08:30 +00:00
nicm caa8703a23 Spacing tweaks. 2021-08-20 20:04:22 +00:00
nicm e463e8622d Remove stray spaces after function names. 2021-08-20 17:50:42 +00:00
nicm 9b00472820 Evaluate styles with the pane variables. 2021-08-12 19:47:05 +00:00
nicm 26773ea9ef Do not dereference pane when it is NULL, fixes a crash when creating a
hook from the config, GitHub issue 2820.
2021-08-12 08:10:20 +00:00
nicm 163908fe8a Move hook format setup earlier and add a hook_client, GitHub issue 2809. 2021-08-12 08:05:11 +00:00
nicm 38c5788232 Give #() commands a one second grace period where the output is empty
before telling the user they aren't doing anything. GitHub issue 2774.
2021-07-13 22:09:29 +00:00
nicm 51915b9b0a Fix mouse_word format now word-separators has no space and position of
menu if too close to the bottom.
2021-07-08 11:14:53 +00:00
nicm 8d75542986 Bump FORMAT_LOOOP_LIMIT and add a log message when hit, GitHub issue 2715. 2021-06-10 07:58:08 +00:00
nicm 3a5b576399 Fix <= operator. 2021-06-10 07:57:06 +00:00
nicm 6c659494f5 Fix warnings, from Jan Tache in GitHub issue 2692. 2021-06-10 07:45:43 +00:00
nicm cd208c9d72 Permit shortcut keys in buffer, client, tree modes to be configured with
a format; the default remains the line number. GitHub issue 2636.
2021-04-12 06:50:25 +00:00
nicm ee0df1b8f8 Tidy old jobs every hour instead of every 30 seconds. 2021-03-11 07:08:18 +00:00
nicm c44750792a Drop support for popups where the content is provided directly to tmux
(which does not have many practical uses) and only support running a
program in the popup. display-popup is now simpler and can accept
multiple arguments to avoid escaping problems (like the other commands).
2021-03-02 10:56:45 +00:00
nicm 40ad11b2b5 Handle NULL term_type. 2021-02-27 06:28:16 +00:00
nicm 583aaebc0a Check session, window, pane in the right order when working out format type. 2021-02-26 21:53:41 +00:00
nicm dd7006c850 Add a couple of format variables for active and last window index. 2021-02-26 07:53:26 +00:00
nicm 6aaef3e705 Correct client_prefix so it returns 1 if in prefix, not 0. 2021-02-24 09:22:15 +00:00
nicm 6876381276 Move config file path expansion much earlier, keep the list of paths
around rather than freeing later, and add a config_files format variable
containing it. Suggested by kn@ a while back.
2021-02-22 08:18:13 +00:00
nicm e858270006 There are many format variables now so allocating all the default ones
each time a tree is created is too expensive. Instead, convert them all
into callbacks and put them in a static table so they only allocate on
demand. The tree remains for the moment for extra (non-default)
variables added by for example copy mode or popups. Also reduce
expensive calls to localtime_r/strftime. GitHub issue 2253.
2021-02-22 07:09:06 +00:00
nicm 6642706f7b Support X11 colour names and some other variations for OSC 10/11, also
add OSC 110 and 111. GitHub issue 2567.
2021-02-15 09:39:37 +00:00
nicm 1492ae11a5 Do not expand times and #() inside #(). 2021-02-09 14:25:40 +00:00
nicm be471c328e Add a -S flag to new-window to make it select the existing window if one
with the given name already exists rather than failing with an error.
Also add a format to check if a window or session name exists which
allows the same with other commands. Requested by and discussed with
kn@.
2021-02-05 12:23:49 +00:00
nicm 255802d8d7 Trim output overwritten by later text or clears completely rather than
only in a few cases. This means we can better track when a line should
wrap. GitHub issue 2537.
2021-01-29 09:48:43 +00:00
nicm fb774b77d0 Change so that window_flags escapes # automatically which means configs
will not have to change. A new format window_raw_flags contains the old
unescaped version.
2021-01-20 07:16:54 +00:00
nicm f97305af31 Use right format for session loop, GitHub issue 2519. 2020-12-30 18:29:40 +00:00
nicm 8bd29a30bf 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.
2020-12-15 08:31:50 +00:00
nicm 9a74bba007 Make replacement of ##s consistent when drawing formats, whether
followed by [ or not. Add a flag (e) to the q: format modifier to double
up #s and use it for the window_flags format variable so it doesn't end
up escaping any following text. GitHub issue 2485.
2020-12-01 08:12:58 +00:00
nicm 61e55fa50d Change how escaping is processed for formats so that ## and # can be
used in styles. Also add a 'w' format modifier for the width. From Chas
J Owens IV in GitHub issue 2389.
2020-11-09 09:10:10 +00:00
nicm ac5045a00f Add numeric comparisons for formats, from teo_paul1 at yahoo dot com in
GitHub issue 2442.
2020-11-02 08:21:30 +00:00
nicm 7e319756d2 Fix a last minute change in previous. 2020-10-06 07:36:42 +00:00
nicm e369f64669 Add a state struct to store working state during format expansion
instead of modiyfing the format tree.

Use this to disable nested job expansion so that the result of #() is
not expanded again. Reported by Chas J Owens IV, GitHub issue 2390.
2020-10-06 07:36:05 +00:00
nicm 869c0e860f Fix some warnings, GitHub issue 2382. 2020-09-16 18:37:55 +00:00
nicm 2ab289980a Add pane_last format, GitHub issue 2353. 2020-08-27 06:55:54 +00:00
nicm d0957529ed Add n: modifier to get length of a format, also automatically expand
variable name arguments again if they contain a #{.
2020-08-20 16:57:40 +00:00
nicm 2964dde903 Use xvasprintf not vasprintf. 2020-06-23 05:23:26 +00:00
nicm 63c2ed1483 Add some formats for search in copy mode (search_present, search_match).
GitHub issue 2268.
2020-06-11 19:43:34 +00:00
nicm 9819470058 Change format callback to return value rather than storing it in the entry. 2020-06-01 19:39:25 +00:00
nicm bbfb44e9b2 Make some data types consistent. 2020-05-25 15:02:25 +00:00
nicm d67245c734 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.
2020-05-16 16:02:24 +00:00
nicm daa95810b5 Allow a custom time format to be given to the t format modifier. 2020-05-16 15:48:35 +00:00
nicm 367b4e4e0f Change message log to be per server rather than per client and include
every command that is run.
2020-05-16 15:47:22 +00:00
nicm cf9baddd6f Change the existing client flags for control mode to apply for any
client, use the same mechanism for the read-only flag and add an
ignore-size flag.

refresh-client -F has become -f (-F stays for backwards compatibility)
and attach-session and switch-client now have -f flags also. A new
format "client_flags" lists the flags and is shown by list-clients by
default.

This separates the read-only flag from "ignore size" behaviour (new
ignore-size) flag - both behaviours are useful in different
circumstances.

attach -r and switchc -r remain and set or toggle both flags together.
2020-05-16 15:45:29 +00:00
nicm 0487029fc5 Call format_defaults_window for panes as well. 2020-05-16 14:55:38 +00:00
nicm 0dd1944206 Tweak the default choose modes formats:
- Only show pane title if it is not default and not empty.
- Add a prettier time format and use that instead of long ctime().
- Remove clutter and change the order.
2020-05-16 14:10:29 +00:00
nicm 662728d6c7 Add a session_marked format like window_marked. 2020-04-22 20:47:00 +00:00