Commit Graph

1370 Commits

Author SHA1 Message Date
Nicholas Marriott
84c708f355 Store client in tty struct directly instead of using a callback function
pointer.
2012-05-22 14:32:28 +00:00
Nicholas Marriott
fe4f00834d Store mouse data in tty structure not on the stack. 2012-05-22 14:11:30 +00:00
Nicholas Marriott
ebf94bc9cb Switch all of the various choose- and list- commands over to the format
infrastructure, from Thomas Adam.
2012-05-22 11:35:37 +00:00
Nicholas Marriott
682884edc5 Add a helper function to send ready message. 2012-05-22 10:56:48 +00:00
Nicholas Marriott
82b053a811 Use tty_pane_full_width macro in some more places. 2012-05-22 09:37:54 +00:00
Nicholas Marriott
2f93affb98 If there are any terminals with insert mode but not ich1, they can go
through the slow path. Tidies code slightly.
2012-05-22 09:36:12 +00:00
Nicholas Marriott
243d12752c Move some common code to repeat spaces into a function. 2012-05-22 09:09:16 +00:00
Nicholas Marriott
7a4679a17f Instead of passing stdin/stdout/stderr file descriptors over imsg and
handling them in the server, handle them in the client and pass buffers
over imsg. This is much tidier for some upcoming changes and the
performance hit isn't critical.

The tty fd is still passed to the server as before.

This bumps the tmux protocol version so new clients and old servers are
incompatible.
2012-05-21 18:27:42 +00:00
Nicholas Marriott
ac7e2f13e9 Ignore line continuation when escaped as \\, from Simon Nicolussi. 2012-05-17 21:21:31 +00:00
Nicholas Marriott
50cefec497 Use -t for move-window with -r rather than dying. Reported by Ben
Boeckel and Thomas Adam.
2012-05-13 07:33:31 +00:00
Nicholas Marriott
37f9bb46d8 Add a helper function to open the terminal for attach-/new-session. 2012-05-06 07:38:17 +00:00
Nicholas Marriott
218b692221 Only enter copy mode on scroll up, from Ailin Nemui. 2012-05-05 18:48:31 +00:00
Nicholas Marriott
96a34a0c0a Tidy up by adding a macro for the pane being the full screen width, from
Ailin Nemui.
2012-05-05 18:45:55 +00:00
Nicholas Marriott
132403b6be Missing ()s in macros. 2012-05-05 18:31:09 +00:00
Nicholas Marriott
3e6454f2d6 Pull CRA out into a separate function and add ERA, from Ailin Nemui. 2012-05-05 18:17:59 +00:00
Nicholas Marriott
f66b105c21 Make unbind-key -a work with -t, based on a diff from Kazuhiko Sakaguchi. 2012-05-05 17:40:47 +00:00
Nicholas Marriott
cc979bda0f default-path has the same possibilities as new-window -c now. 2012-05-02 19:29:13 +00:00
Nicholas Marriott
a6c22d650b Add a flag to move-window to renumber the windows in a session (closing
any gaps) and add an option to do this automatically each time a window
is killed. From Thomas Adam.
2012-04-29 17:20:01 +00:00
Nicholas Marriott
e60f48ab09 Use int not u_char for colours from options since they may have bit 8
set to mark them as 256-colour. Reported by Chris Johnson.
2012-04-29 07:33:41 +00:00
Nicholas Marriott
ff5155f719 Add a buffer with all input from last ground state, will be used for
control mode. From George Nachman.
2012-04-25 21:12:49 +00:00
Nicholas Marriott
94795eb48e Add missing prototype. 2012-04-23 23:25:02 +00:00
Nicholas Marriott
d3e432069b Use an enum for client exit reasons, from George Nachman. 2012-04-23 23:18:43 +00:00
Nicholas Marriott
0f9e0d1cfe Do not return a buffer on the stack, mentioned by jsg a while ago. 2012-04-23 22:43:09 +00:00
Nicholas Marriott
48e6ebbe1e Use a helper function to fire choose callback. 2012-04-23 22:40:47 +00:00
Nicholas Marriott
e02d1bce98 Add window-status-separator option, from Thomas Adam. 2012-04-23 22:23:14 +00:00
Nicholas Marriott
ed58b2d353 Add -a flag to kill-window, from Thomas Adam. 2012-04-23 22:10:45 +00:00
Nicholas Marriott
5cbca2e70f Fix printing commands with no arguments, from Benjamin Poirier. 2012-04-22 05:24:05 +00:00
Nicholas Marriott
e8dff68588 Handle partial keys properly by making sure the timer has actually
expired, fixes problems with mintty reported by Michael Simpson.
2012-04-22 05:21:40 +00:00
Nicholas Marriott
c6e0af9bdb Turn automatic-rename off properly if turned off by renaming a
window. Reported by Romain Francoise.
2012-04-11 07:45:30 +00:00
Nicholas Marriott
6703ca8d26 Stop accepting new clients for 1 second on EMFILE/ENFILE. Based on
ongoing fixes to other daemons by Theo.
2012-04-11 06:16:14 +00:00
Nicholas Marriott
631d6b59fd Do not fire name timer when automatic-rename is off, from Tim Ruehsen a
while ago.
2012-04-08 06:47:26 +00:00
Nicholas Marriott
ed54f01d2f Fix comment for mouse bits. 2012-04-01 21:45:48 +00:00
Nicholas Marriott
711d2205dd Fix some indentation. 2012-04-01 21:07:35 +00:00
Nicholas Marriott
18d3498fb2 Simplify mouse input function. 2012-04-01 20:56:47 +00:00
Nicholas Marriott
c829bdf537 Minor style nits - return (). 2012-04-01 20:53:47 +00:00
Nicholas Marriott
20d10c608d Turn some errors down to info. 2012-04-01 13:27:18 +00:00
Nicholas Marriott
e1273fb6a1 Fix option name. 2012-04-01 13:21:38 +00:00
Nicholas Marriott
85f5485cb5 Add a layout history which can be stepped through with select-layout -u
and -U commands (bound to 'u' and 'U' by default).
2012-04-01 13:18:38 +00:00
Nicholas Marriott
b831f86354 Add pane_current_path format, suggested by Mikolaj Kucharski. 2012-04-01 10:42:39 +00:00
Nicholas Marriott
c11da7ca88 Only exit mouse mode on scroll wheel when actually reaching the end of
the history, from James Nylen.
2012-04-01 09:23:31 +00:00
Nicholas Marriott
cd8e536c43 Only find each window once no matter how many panes, from Jonathan
Daugherty.
2012-04-01 08:10:56 +00:00
Nicholas Marriott
0edaa34bfd Add sys/file.h. 2012-03-24 11:23:19 +00:00
Nicholas Marriott
c0cfbe12e4 Accept an argument to show-environment to show one variable, based on a
diff from Kazuhiko Sakaguchi.
2012-03-22 11:11:57 +00:00
Nicholas Marriott
7c9d003e99 Some terminals respond to secondary DA with primary (they ignore the
intermediate character). So ignore the possible responses to primary DA.
2012-03-21 21:28:03 +00:00
Nicholas Marriott
49ce38b09a Fix save-buffer usage, from Kazuhiko Sakaguchi. 2012-03-21 19:16:07 +00:00
Nicholas Marriott
b1e4b8769b Remove a stale comment. 2012-03-20 23:20:08 +00:00
Nicholas Marriott
90bf560fe4 Add -C -N -T flags to find-window to find in content, name, title. From
Jonathan Daugherty.
2012-03-20 17:09:48 +00:00
Nicholas Marriott
5672f2ce6b Check changes_timer with event_initialized before event_del. 2012-03-20 14:06:44 +00:00
Nicholas Marriott
01f2b5d64b 50 is a too low trigger default on larger terminals, bump to 250. 2012-03-20 11:23:12 +00:00
Nicholas Marriott
f59971276a Add a simple form of output rate limiting by counting the number of
certain C0 sequences (linefeeds, backspaces, carriage returns) and if it
exceeds a threshold (current default 50/millisecond), start to redraw
the pane every 100 milliseconds instead of making each change as it
comes. Two configuration options - c0-change-trigger and
c0-change-interval.

This makes tmux much more responsive under very fast output (for example
yes(1) or accidentally cat'ing a large file) but may not be perfect on
all terminals and connections - feedback very welcome, particularly
where this change has a negative rather than positive effect (making it
off by default is a possibility).

After much experimentation based originally on a request Robin Lee
Powell (which ended with a completely different solution), this idea
from discussion with Ailin Nemui.
2012-03-20 11:01:00 +00:00