summaryrefslogtreecommitdiffstats
path: root/tty.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2011-03-07 23:46:27 +0000
committerNicholas Marriott <nicm@openbsd.org>2011-03-07 23:46:27 +0000
commit79e30daeae1d49a1cf1dc4618edf1ec82804a80c (patch)
tree60ba3ed616a1c1d247a4af715dc27ef8a2d22e76 /tty.c
parentd5ed5fb08ff83a2cc38292b3eb0addab21ce6282 (diff)
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 'tty.c')
-rw-r--r--tty.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/tty.c b/tty.c
index b44c5974..46b8a475 100644
--- a/tty.c
+++ b/tty.c
@@ -932,6 +932,16 @@ tty_cmd_utf8character(struct tty *tty, const struct tty_ctx *ctx)
}
void
+tty_cmd_rawstring(struct tty *tty, const struct tty_ctx *ctx)
+{
+ u_int i;
+ u_char *str = ctx->ptr;
+
+ for (i = 0; i < ctx->num; i++)
+ tty_putc(tty, str[i]);
+}
+
+void
tty_cell(
struct tty *tty, const struct grid_cell *gc, const struct grid_utf8 *gu)
{