summaryrefslogtreecommitdiff
path: root/usr.bin/tmux/tmux.1
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@cvs.openbsd.org>2012-03-20 11:01:01 +0000
committerNicholas Marriott <nicm@cvs.openbsd.org>2012-03-20 11:01:01 +0000
commit6cc19c0e25db197e4936c72bccee94fe437fd774 (patch)
tree3bc3b8a5f842c010724d87cf9f042c1814e37f59 /usr.bin/tmux/tmux.1
parentc99c9ef7592d38921c978efcf49a95e63665b991 (diff)
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.
Diffstat (limited to 'usr.bin/tmux/tmux.1')
-rw-r--r--usr.bin/tmux/tmux.122
1 files changed, 20 insertions, 2 deletions
diff --git a/usr.bin/tmux/tmux.1 b/usr.bin/tmux/tmux.1
index 1ee48173d69..b532f4f532d 100644
--- a/usr.bin/tmux/tmux.1
+++ b/usr.bin/tmux/tmux.1
@@ -1,4 +1,4 @@
-.\" $OpenBSD: tmux.1,v 1.282 2012/03/17 21:40:53 nicm Exp $
+.\" $OpenBSD: tmux.1,v 1.283 2012/03/20 11:01:00 nicm Exp $
.\"
.\" Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
.\"
@@ -14,7 +14,7 @@
.\" IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
.\" OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd $Mdocdate: March 17 2012 $
+.Dd $Mdocdate: March 20 2012 $
.Dt TMUX 1
.Os
.Sh NAME
@@ -2463,6 +2463,24 @@ It may be switched off globally with:
set-window-option -g automatic-rename off
.Ed
.Pp
+.It Ic c0-change-interval Ar interval
+.It Ic c0-change-trigger Ar trigger
+These two options configure a simple form of rate limiting for a pane.
+If
+.Nm
+sees more than
+.Ar trigger
+C0 sequences that modify the screen (for example, carriage returns, linefeeds
+or backspaces) in one millisecond, it will stop updating the pane immediately and
+instead redraw it entirely every
+.Ar interval
+milliseconds.
+This helps to prevent fast output (such as
+.Xr yes 1
+overwhelming the terminal).
+The default is a trigger of 50 and an interval of 100.
+A trigger of zero disables the rate limiting.
+.Pp
.It Ic clock-mode-colour Ar colour
Set clock colour.
.Pp