diff --git a/tty-keys.c b/tty-keys.c index dfea15b2..10c9c670 100644 --- a/tty-keys.c +++ b/tty-keys.c @@ -61,6 +61,9 @@ struct tty_default_key_raw { key_code key; }; static const struct tty_default_key_raw tty_default_raw_keys[] = { + /* Application escape. */ + { "\033O[", '\033' }, + /* * Numeric keypad. Just use the vt100 escape sequences here and always * put the terminal into keypad_xmit mode. Translation of numbers @@ -1065,7 +1068,7 @@ tty_keys_device_attributes(struct tty *tty, const char *buf, size_t len, case 'M': /* mintty */ flags |= (TERM_256COLOURS|TERM_RGBCOLOURS); break; - case 'T': /* tmux - if newer will have the DSR as well */ + case 'T': /* tmux - new versons reply to DSR which will set RGB */ flags |= (TERM_UTF8|TERM_256COLOURS); break; case 'U': /* rxvt-unicode */ diff --git a/tty.c b/tty.c index 06ae6d31..4090a115 100644 --- a/tty.c +++ b/tty.c @@ -340,6 +340,7 @@ tty_start_tty(struct tty *tty) tty->flags |= TTY_FOCUS; tty_puts(tty, "\033[?1004h"); } + tty_puts(tty, "\033[?7727h"); } evtimer_set(&tty->start_timer, tty_start_timer_callback, tty); @@ -426,6 +427,7 @@ tty_stop_tty(struct tty *tty) tty->flags &= ~TTY_FOCUS; tty_raw(tty, "\033[?1004l"); } + tty_raw(tty, "\033[?7727l"); } if (tty_use_margin(tty))