17c2c4219d
The format callback may not always succeed, so we need to check for
...
NULL. From Patrick Palka.
2015-10-27 09:18:06 +00:00
e65306d8e7
Extend the modifiers allowed before formats: as well as the existing
...
#{=10:...} length limit, add #{t:...} to convert a time_t format to a
string, #{b:...} for basename and #{d:...} for dirname. Remove all the
foo_string time formats as they can now be replaced by "t:", for example
#{window_activity_string} becomes #{t:window_activity}.
2015-10-25 22:29:17 +00:00
3faa51a0ca
Pass output from jobs through format_expand() so they are expanded again
...
(this was the previous behaviour).
2015-10-25 08:59:26 +00:00
14da999408
Format for scroll position, from Jorge Morante.
2015-10-23 16:02:21 +00:00
16efa84838
Make refresh-client force update of jobs, from Sina Siadat.
2015-09-14 10:25:52 +00:00
cfabe30bec
Add session_last_attached time and format, from Sina Siadat.
2015-09-10 08:58:14 +00:00
82326dcbe2
A couple of style nits.
2015-09-03 14:30:23 +00:00
b569585000
Move struct paste_buffer out of tmux.h.
2015-08-29 09:25:00 +00:00
5f122af556
Make a few more expensive (ish) formats functions instead of inline.
2015-08-28 17:01:42 +00:00
983ebb2689
Allow formats to be specified as functions (in the code) so they are
...
only evaluated on demand rather than each time a format tree is
constructed. Use this for expensive formats like pane_current_command.
2015-08-28 16:46:40 +00:00
75d10058a4
Run status update on a per-client timer at status-interval.
2015-08-28 12:16:28 +00:00
b6618b631b
Move format job cleanup onto its own timer.
2015-08-28 11:38:27 +00:00
ee9f708500
Allow environment variables in #{}.
2015-08-28 10:06:52 +00:00
81069f66f9
Add a format to show if client is a control client. From Bruno Sutic.
2015-07-13 15:37:26 +00:00
b43b13faf9
Use xsnprintf.
2015-06-18 23:55:24 +00:00
d96ab34019
Add window_activity format, from Thomas Adam based on a diff originally
...
from propos6 at gmail dot com.
2015-06-15 10:58:01 +00:00
29c29e7717
Add a format for client PID (client_pid) and server PID (pid). Diff for
...
client_pid from Thomas Adam.
2015-06-14 10:07:44 +00:00
bbc0898060
wp->tty is a char [] not a char * so it can't be NULL. From Thomas Adam.
2015-06-10 12:56:04 +00:00
2a8c2648f0
Don't use special strings if #() commands fail, just remove the format
...
(as if the command produced nothing). Makes constructions that can fail
like '#(test whatever && echo foo)' work as they did before.
2015-05-29 23:26:52 +00:00
74c755f2ab
Expand formats again inside #(), and free the temporaries.
2015-05-29 23:12:38 +00:00
379400cfa6
Move the jobs output cache into the formats code so that #() work more
...
generally (for example, again working in set-titles-string).
2015-05-27 13:28:04 +00:00
7140cce7f3
Return empty string if format is empty rather than attempting to
...
allocate zero bytes.
2015-05-20 06:39:02 +00:00
ec34439f9c
Add a session_alerts format which is a list of all the alerts in the
...
current session in symbolic form (something like "0!,4~,5!"). Use this
in the default set-titles-string. Prompted by a request from Jan ONDREJ.
2015-05-12 15:29:29 +00:00
c4a4bd6ac5
Move input parser structs into input.c (removing fairly useless
...
saved_cursor_[xy] formats as a side-effect).
2015-05-08 16:18:04 +00:00
31b1ab4852
Add a format window_linked which is 1 if a window has been linked
...
multiple times, also remove the default space in window_flags and use a
conditional to add it in window-status-format (this means additional
flags can be added in the option without extra spaces). From Thomas Adam
with tweaks by me.
2015-05-06 08:35:39 +00:00
69f292a90e
Always format real layout even when zoomed.
2015-04-21 22:38:49 +00:00
1f404f6a23
Put mouse_any_flag back, don't know where it went to (still in man page).
2015-04-21 15:18:38 +00:00
bded743706
Support for multiple key tables to commands to be bound to sequences of
...
keys. The default key bindings become the "prefix" table and -n the
"root" table. Keys may be bound in new tables with bind -T and
switch-client -T used to specify the table in which the next key should
be looked up. Based on a diff from Keith Amling.
2015-04-20 15:34:56 +00:00
3aa72b42b2
Add a helper function to convert time, and add session_activity formats
...
(the latter from Takatoshi Matsumoto).
2015-03-31 17:58:36 +00:00
02df86079b
Fix some format specifier nits, from Ben Boeckel.
2015-03-31 17:45:10 +00:00
03758a50dc
Add format_expand_time and use it instead of status_replace where
...
command execution is not needed.
2015-02-06 17:11:39 +00:00
4946f74253
Wrap all the individual format_* calls in a single format_defaults
...
functions.
2015-02-05 10:29:43 +00:00
8a8e2eb04a
correctly use HOST_NAME_MAX.
...
Some notes:
POSIX HOST_NAME_MAX doesn't include the NUL.
POSIX LOGIN_NAME_MAX and TTY_NAME_MAX do include the NUL.
BSD MAXHOSTNAMELEN includes the NUL. Actually, most of the historical
BSD MAX* defines did include the NUL, except for the historical
mistake of utmp fields without NULs in the string, which directly led
to strncpy.. just showing how error prone this kind of accounting is.
CSRG did right. Somehow POSIX missed the memo on the concepts of
carefulness and consistancy, and we are still paying the price when
people trip over this. Of course, glibc is even more amazing (that is
a hint to blackhats)
ok guenther
2015-01-11 04:14:40 +00:00
7a0c94b28a
Add pane_dead_status for exit status of dead panes.
2014-12-09 19:23:35 +00:00
575fd1e322
Permit option values to be used in formats.
2014-12-02 23:19:45 +00:00
c8bf8ee931
Check ZOOMED flag on window.
2014-12-01 14:30:18 +00:00
c6129f9c09
Empty strings should be false too for #{?}, from Marc Finet.
2014-11-08 12:50:38 +00:00
428b51e031
Add pane_input_off format, from Anish R Athalye.
2014-10-25 08:47:04 +00:00
a27ba6e380
Add xreallocarray and remove nmemb argument from xrealloc.
2014-10-08 17:35:58 +00:00
9bda7e881a
Add window_last_flag and window_zoomed_flag. From John Morrissey.
2014-09-08 14:29:05 +00:00
1ac96200a7
Remove support for the continuous reporting "any" mouse mode which never
...
really worked properly and is rarely used.
2014-08-09 07:33:37 +00:00
7160b8c2d5
Add some formats for pane bounds.
2014-05-27 12:49:36 +00:00
b3e8d440ed
If multiple arguments are given to new-session, new-window,
...
split-window, respawn-window or respawn-pane, pass them directly to
execvp() to help avoid quoting problems. One argument still goes to "sh
-c" like before. Requested by many over the years. Patch from J Raynor.
2014-05-13 08:08:32 +00:00
3dbacbb62b
Add support for named buffers. If you don't name a buffer, things work
...
much as before - buffers are automatically named "buffer0000",
"buffer0001" and so on and ordered as a stack. Buffers can be named
explicitly when creating ("loadb -b foo" etc) or renamed ("setb -b
buffer0000 -n foo"). If buffers are named explicitly, they are not
deleted when buffer-limit is reached. Diff from J Raynor.
2014-05-13 07:34:35 +00:00
806520f025
Add some UTF-8 utility functions and use them to prevent the width limit
...
on formats from splitting UTF-8 characters improperly.
2014-04-17 15:37:55 +00:00
992ef70fb6
Remove the monitor-content option and associated bits and bobs. It's
...
never worked very well. If there is a big demand for it to return, will
consider better ways to do it.
2014-04-17 07:36:45 +00:00
252a7373d6
Support UTF-8 with choose-buffer, from Kosuke ASAMI. Also make
...
buffer_sample bigger to let it trim at window right edge.
2014-04-02 18:12:18 +00:00
b11de5adc7
Make session_attached a count and add session_many_attached flag.
2014-03-31 21:37:55 +00:00
1286c56188
Replace ## by # in format.
2013-11-24 11:29:09 +00:00
98b81e9834
And get it right this time... don't leak if it is an empty string either.
2013-10-11 08:03:43 +00:00