diff options
author | Tiago Cunha <tcunha@gmx.com> | 2011-03-19 23:30:37 +0000 |
---|---|---|
committer | Tiago Cunha <tcunha@gmx.com> | 2011-03-19 23:30:37 +0000 |
commit | a0295b4c2f648c008b732f7981304ae6e2df322b (patch) | |
tree | 86aaf41669466ffc3454a4d324e7196af8dda284 /screen-write.c | |
parent | 9bc44043a4e66d7c8edb525d32aeaa1824ddbd11 (diff) | |
download | rtmux-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.c | 14 |
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); +} |