Commit Graph

1116 Commits (82b053a81135c0873f9aa8824386e63abd48bbc4)

Author SHA1 Message Date
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
Nicholas Marriott bf9e7a1c68 Move MSG_IDENTIFY to the last sent by the client, this will be needed by
control clients and irrelevant for others.
2012-03-19 08:42:06 +00:00
Nicholas Marriott d8805af66b On xterm 271 and later, put the terminal into SCL 5 and use DECCRA for
scrolling the region in panes (if the large region check isn't
hit). With help from Ailin Nemui.
2012-03-17 22:56:04 +00:00
Nicholas Marriott 46210344a6 Add notify hooks for various events, the functions are currently empty
stubs but will be filled in for control mode later. From George Nachman.
2012-03-17 22:35:09 +00:00
Nicholas Marriott 4f480c901d $Id$ -> $OpenBSD$. 2012-03-17 22:34:12 +00:00