diff options
author | Nicholas Marriott <nicm@cvs.openbsd.org> | 2009-07-10 07:12:00 +0000 |
---|---|---|
committer | Nicholas Marriott <nicm@cvs.openbsd.org> | 2009-07-10 07:12:00 +0000 |
commit | de53a076a1b2e068e63b07259b62466709a04db6 (patch) | |
tree | 9ecbcfd43d297b4a3542c88dadb31ac3188c6942 /usr.bin | |
parent | eef17eedd4353e87fd4358216f808cb473e9c3e7 (diff) |
Don't send initialisation strings is1/2/3 (barely anything else does) and move
smcup to the first and rmcup to the last sequences output to the terminal. This
allows tmux to use the alternate screen (smcup/rmcup) when available.
Diffstat (limited to 'usr.bin')
-rw-r--r-- | usr.bin/tmux/tty.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/usr.bin/tmux/tty.c b/usr.bin/tmux/tty.c index a180f89cb9e..3b448736160 100644 --- a/usr.bin/tmux/tty.c +++ b/usr.bin/tmux/tty.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tty.c,v 1.9 2009/07/07 17:24:32 nicm Exp $ */ +/* $OpenBSD: tty.c,v 1.10 2009/07/10 07:11:59 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -157,11 +157,8 @@ tty_start_tty(struct tty *tty) if (ioctl(tty->fd, TIOCFLUSH, &what) != 0) fatal("ioctl(TIOCFLUSH)"); - tty_putcode(tty, TTYC_IS1); - tty_putcode(tty, TTYC_IS2); - tty_putcode(tty, TTYC_IS3); - tty_putcode(tty, TTYC_SMCUP); + tty_putcode(tty, TTYC_SMKX); tty_putcode(tty, TTYC_ENACS); tty_putcode(tty, TTYC_CLEAR); @@ -200,12 +197,13 @@ tty_stop_tty(struct tty *tty) tty_raw(tty, tty_term_string(tty->term, TTYC_RMACS)); tty_raw(tty, tty_term_string(tty->term, TTYC_SGR0)); tty_raw(tty, tty_term_string(tty->term, TTYC_RMKX)); - tty_raw(tty, tty_term_string(tty->term, TTYC_RMCUP)); tty_raw(tty, tty_term_string(tty->term, TTYC_CLEAR)); tty_raw(tty, tty_term_string(tty->term, TTYC_CNORM)); if (tty_term_has(tty->term, TTYC_KMOUS)) tty_raw(tty, "\033[?1000l"); + + tty_raw(tty, tty_term_string(tty->term, TTYC_RMCUP)); } #if 0 |