nicm
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
nicm
45f3cea263
Break version check into a separate function, and limit version to 8 bits.
2015-10-29 09:35:31 +00:00
nicm
bf9c933cae
Like options, move the environ struct into environ.c.
2015-10-28 09:51:55 +00:00
nicm
44657bf932
Move struct options into options.c.
2015-10-27 15:58:42 +00:00
nicm
67c3a014b9
No more TMPDIR.
2015-10-27 14:51:35 +00:00
nicm
07b0ea03c3
Break the common process set up, event loop and imsg dispatch code
...
between server and client out into a separate internal API. This will
make it easier to add another process.
2015-10-27 13:23:24 +00:00
nicm
9952201ca7
Count brackets in #{?...} so that nested conditional formats work, from
...
Daniel De Graaf.
2015-10-27 09:28:31 +00:00
nicm
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
nicm
3fc001d0a2
Use copy-mode -et= in WheelUpPane binding, from Patrick Palka.
2015-10-27 09:15:21 +00:00
nicm
640c6fdd5f
If a mouse event has no key binding, pass it through to the pane it
...
happened in, not the active pane like normal key presses. Fixes problems
seen by Enrico Ghirardi.
2015-10-26 23:16:18 +00:00
nicm
380a1ea8ef
Default bindings for mouse wheel on status line to change window (like
...
we had before), from Patrick Palka.
2015-10-26 23:06:18 +00:00
nicm
b85be36d1c
Handle unknown keys more gracefully, return a string instead of NULL.
2015-10-26 22:03:04 +00:00
nicm
a22fe33aa0
Some extra logging of where keys are actually going.
2015-10-26 17:17:06 +00:00
jmc
c582f7d177
space before punctuation;
2015-10-26 00:15:37 +00:00
nicm
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
nicm
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
deraadt
3034a71488
Let's see if anyone screams about not being able to specify $TMPDIR
...
for their tmux sockets.
(Over the years, I have seen $TMPDIR set up worse than /tmp many times,
and don't know how this practice infected other parts of the system.
Nothing uses tmpdir(3), nor a huge-temporary-file program like sort.)
ok nicm
2015-10-25 07:48:16 +00:00
nicm
2e2b8a95bd
Pasting mouse escape sequences is unlikely, so skip them when working
...
out whether the user is pasting.
2015-10-23 23:46:36 +00:00
nicm
26a55ddcf9
Remove some unnecessary checks before free().
2015-10-23 16:30:15 +00:00
nicm
1a4ddfa8a7
If $TMUX is set, and we are unsure about the session, use it.
2015-10-23 16:29:07 +00:00
nicm
5383b047d1
tmux can call pledge() in main with large set and then reduce it
...
slightly in the server to "stdio rpath wpath cpath fattr unix recvfd
proc exec tty ps".
2015-10-23 16:07:29 +00:00
nicm
14da999408
Format for scroll position, from Jorge Morante.
2015-10-23 16:02:21 +00:00
nicm
63a3fd3c0f
Use tty_term_flag not _has for XT, and make -2 force direct use of
...
256-colour escape sequences (so setaf/setab can be bypassed if needed).
2015-10-23 15:52:54 +00:00
nicm
3ebcf25149
If the pane is still on all_window_panes but not actually connected to
...
window or session (which can happen if it is killed during a command
sequence and something else has a reference), fall back to the best
effort. Fixes "tmux killw\; detach" for Rudis Muiznieks.
2015-10-22 11:23:00 +00:00
nicm
a05c27a7e1
Unzoom before -LRUD, reported by Andy Weidenbaum.
2015-10-22 11:19:31 +00:00
nicm
c2c2d44c72
Log identify messages.
2015-10-22 11:00:51 +00:00
nicm
515dfea4b7
This should not be changed.
2015-10-22 10:48:30 +00:00
nicm
31fd071faa
Rename shutdown to exit.
2015-10-22 10:46:24 +00:00
nicm
60ca29df64
client_key_table was missing.
2015-10-21 13:14:36 +00:00
nicm
ddbc4a0f6c
By popular demand add a default binding for mouse wheel up to scroll
...
into history (if the mouse is, on of course).
2015-10-21 11:13:47 +00:00
nicm
076034345a
Use client pointer not file descriptor in logging.
2015-10-20 21:12:08 +00:00
nicm
8c8cddbe02
The table could change when retrying so don't save it at start of
...
server_client_handle_key.
2015-10-20 14:19:27 +00:00
nicm
174a2ad731
Pass current directory as a string rather than a file descriptor because
...
pledge doesn't let us pass directory file descriptors.
2015-10-18 20:42:42 +00:00
nicm
9c601ebde8
Add pledge "stdio unix sendfd proc exec tty" to tmux client process,
...
"sendfd" is dropped after first message from the server.
2015-10-17 18:30:43 +00:00
nicm
cf89abb013
Don't free after calling paste_set but do after evbuffer_add, from Theo
...
Buehler.
2015-10-16 07:43:29 +00:00
guenther
241fd72f75
Userspace doesn't need to use SUN_LEN(): connect() and bind() must accept
...
sizeof(struct sockaddr_un), so do the simple, portable thing
ok beck@ deraadt@
2015-10-11 00:26:23 +00:00
nicm
7340d5adfd
Couple of memory leaks in error paths, from Frederik Vanderstraeten.
2015-10-07 09:52:58 +00:00
nicm
695a591f8e
Adding colors=256 to *256color* was always pretty stupid and now it
...
won't work (without adding setaf@:setab@ too).
2015-09-25 23:30:24 +00:00
nicm
03d7dba5d8
If the terminal has colors=256, only try to use setaf/setab if they
...
exist, reported by Filipe Brandenburger.
2015-09-25 23:30:12 +00:00
nicm
28f23f18e9
Free the history when it is cleared, based on a diff from Carlo Cannas.
2015-09-25 15:53:07 +00:00
nicm
2a62917444
Don't leak fd and path on failure.
2015-09-24 12:06:20 +00:00
nicm
69ea6b9373
Do not leak log file descriptor.
2015-09-24 12:03:58 +00:00
nicm
ddb2d1221b
Assign flag not number for flag types (we got away with it so far
...
because that are a union). From Filipe Brandenburger.
2015-09-24 07:02:18 +00:00
nicm
dc66795e35
Don't update last session when the session is unchanged, from Sina Siadat.
2015-09-22 21:56:16 +00:00
nicm
d5f223a3fe
Reset the alerts timer always on activity, from Thomas Adam.
2015-09-21 09:34:52 +00:00
nicm
6b709e655e
-l should apply to the new not the old pane with -b, from "MadMaverick9"
...
on GitHub.
2015-09-18 09:55:22 +00:00
nicm
8b5d5dca9f
Redraw both src and dst sessions in break-pane.
2015-09-17 14:11:55 +00:00
nicm
c1d0b6a6ee
Log when cmdq_continue is called.
2015-09-16 22:41:00 +00:00
nicm
232a0ffc34
Give some variables less silly names.
2015-09-16 22:40:27 +00:00
nicm
ecb257f0ef
A few minor style nits.
2015-09-16 22:40:05 +00:00