aboutsummaryrefslogtreecommitdiff
path: root/screen-write.c
diff options
context:
space:
mode:
authorTiago Cunha <tcunha@gmx.com>2011-03-19 23:30:37 +0000
committerTiago Cunha <tcunha@gmx.com>2011-03-19 23:30:37 +0000
commita0295b4c2f648c008b732f7981304ae6e2df322b (patch)
tree86aaf41669466ffc3454a4d324e7196af8dda284 /screen-write.c
parent9bc44043a4e66d7c8edb525d32aeaa1824ddbd11 (diff)
downloadrtmux-a0295b4c2f648c008b732f7981304ae6e2df322b.tar.gz
rtmux-a0295b4c2f648c008b732f7981304ae6e2df322b.tar.bz2
rtmux-a0295b4c2f648c008b732f7981304ae6e2df322b.zip
Sync OpenBSD patchset 866:
Support passing through escape sequences to the underlying terminal by using DCS with a "tmux;" prefix. Escape characters in the sequences must be doubled. For example: $ printf '\033Ptmux;\033\033]12;red\007\033\\' Will pass \033]12;red\007 to the terminal (and change the cursor colour in xterm). From Kevin Goodsell.
Diffstat (limited to 'screen-write.c')
-rw-r--r--screen-write.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/screen-write.c b/screen-write.c
index 99ff97bc..4d8595df 100644
--- a/screen-write.c
+++ b/screen-write.c
@@ -1,4 +1,4 @@
-/* $Id: screen-write.c,v 1.93 2011-02-15 15:10:47 tcunha Exp $ */
+/* $Id: screen-write.c,v 1.94 2011-03-19 23:30:37 tcunha Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -1191,3 +1191,15 @@ screen_write_overwrite(struct screen_write_ctx *ctx, u_int width)
grid_view_set_cell(gd, xx, s->cy, &grid_default_cell);
}
}
+
+void
+screen_write_rawstring(struct screen_write_ctx *ctx, u_char *str, u_int len)
+{
+ struct tty_ctx ttyctx;
+
+ screen_write_initctx(ctx, &ttyctx, 0);
+ ttyctx.ptr = str;
+ ttyctx.num = len;
+
+ tty_write(tty_cmd_rawstring, &ttyctx);
+}