Commit Graph

626 Commits

Author SHA1 Message Date
88aa1c8dc3 Two spacing and spelling nits. 2015-11-13 12:18:52 +00:00
e2917b2627 Merge branch 'obsd-master' 2015-11-13 10:43:07 +00:00
3df4959f51 Merge branch 'obsd-master'
Conflicts:
	Makefile
2015-11-13 10:42:45 +00:00
531869bd92 Add window_visible_layout which ignores zoomed panes and use it for
control mode (which needs to know all panes), from George Nachman.
2015-11-13 10:00:26 +00:00
c5689a5a40 Long overdue change to the way we store cells in the grid: now, instead
of storing a full grid_cell with UTF-8 data and everything, store a new
type grid_cell_entry. This can either be the cell itself (for ASCII
cells), or an offset into an extended array (per line) for UTF-8
data.

This avoid a large (8 byte) overhead on non-UTF-8 cells (by far the
majority for most users) without the complexity of the shadow array we
had before. Grid memory without any UTF-8 is about half.

The disadvantage that cells can no longer be modified in place and need
to be copied out of the grid and back but it turned out to be lot less
complicated than I expected.
2015-11-13 08:09:28 +00:00
5f483499f3 Merge branch 'obsd-master' 2015-11-12 12:01:17 +00:00
1b86f520ea Nuke the utf8 and status-utf8 options and make tmux only a UTF-8
terminal. We still support non-UTF-8 terminals outside tmux, but inside
it is always UTF-8 (as when the utf8 and status-utf8 options were on).
2015-11-12 11:09:11 +00:00
a0f3999ce7 Remove the mouse_utf8_flag format as well. 2015-11-12 11:07:10 +00:00
17f6c3be8e Merge branch 'obsd-master' 2015-10-31 10:01:12 +00:00
01defc9f49 Because pledge(2) does not allow us to pass directory file descriptors
around, we can't use file descriptors for the working directory because
we will be unable to pass it to a privileged process to tell it where to
read or write files or spawn children. So move tmux back to using
strings for the current working directory. We try to check it exists
with access() when it is set but ultimately fall back to ~ if it fails
at time of use (or / if that fails too).
2015-10-31 08:13:58 +00:00
a5e4d3a2d8 Merge branch 'obsd-master' 2015-10-28 12:01:11 +00:00
bf9c933cae Like options, move the environ struct into environ.c. 2015-10-28 09:51:55 +00:00
da1f6fc2c8 Merge branch 'obsd-master'
Conflicts:
	Makefile
	client.c
	server-client.c
	server.c
	tmux.c
	tmux.h
2015-10-27 23:27:26 +00:00
44657bf932 Move struct options into options.c. 2015-10-27 15:58:42 +00:00
147b5ae514 Merge branch 'obsd-master' 2015-10-27 10:01:13 +00:00
9952201ca7 Count brackets in #{?...} so that nested conditional formats work, from
Daniel De Graaf.
2015-10-27 09:28:31 +00:00
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
ca29903c82 Merge branch 'obsd-master' 2015-10-26 00:01:10 +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
3e0d31c4e9 Merge branch 'obsd-master' 2015-10-25 09:22:20 +00:00
4acc8d0ff5 Merge branch 'obsd-master'
Conflicts:
	cmd-find.c
2015-10-25 09:21:37 +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
74b958ecbe Merge branch 'obsd-master'
Conflicts:
	Makefile
2015-09-14 12:42:19 +01:00
16efa84838 Make refresh-client force update of jobs, from Sina Siadat. 2015-09-14 10:25:52 +00:00
1fd756066c Merge branch 'obsd-master' 2015-09-10 12:01:08 +01:00
cfabe30bec Add session_last_attached time and format, from Sina Siadat. 2015-09-10 08:58:14 +00:00
76688d2040 Merge branch 'obsd-master'
Conflicts:
	cfg.c
	tmux.c
2015-09-06 20:47:50 +01:00
82326dcbe2 A couple of style nits. 2015-09-03 14:30:23 +00:00
2c6ea705fd Bring back pane_current_path. 2015-08-31 19:57:37 +01:00
29f2120e5b Linux: get_proc_name() -> osdep_get_name() 2015-08-30 21:47:50 +01:00
cb89f2f2a1 Merge branch 'obsd-master'
Conflicts:
	Makefile
	format.c
2015-08-30 21:44:01 +01: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
84eabb2658 Merge branch 'obsd-master' 2015-08-28 14:01:11 +01: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
31c027a37a Merge branch 'obsd-master' 2015-08-28 12:01:07 +01:00
ee9f708500 Allow environment variables in #{}. 2015-08-28 10:06:52 +00:00
07aef38591 Merge branch 'obsd-master' 2015-07-13 18:01:09 +01:00
81069f66f9 Add a format to show if client is a control client. From Bruno Sutic. 2015-07-13 15:37:26 +00:00
0ef3e28609 Merge branch 'obsd-master' 2015-06-19 02:01:10 +01:00
b43b13faf9 Use xsnprintf. 2015-06-18 23:55:24 +00:00
9fdc3a069a Merge branch 'obsd-master' 2015-06-15 14:01:09 +01: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
37005d04a9 Merge branch 'obsd-master' 2015-06-14 12:01:10 +01: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
48a46e066e Merge branch 'obsd-master' 2015-06-10 16:01:08 +01: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