From fd0971542fc7d2bbbc7938428d3d9e2b5ec961cc Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Sun, 12 Jul 2009 17:08:37 +0000 Subject: [PATCH] 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. --- tty.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/tty.c b/tty.c index be94b4a4..13745ceb 100644 --- a/tty.c +++ b/tty.c @@ -1,4 +1,4 @@ -/* $Id: tty.c,v 1.112 2009-07-08 18:03:03 nicm Exp $ */ +/* $Id: tty.c,v 1.113 2009-07-12 17:08:37 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -161,11 +161,8 @@ tty_start_tty(struct tty *tty) fatal("ioctl(TIOCFLUSH)"); #endif - 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); @@ -204,12 +201,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