On second thoughts, do check DA2 for DECFRA and DECSLRM since that will
authornicm <nicm@openbsd.org>
Fri, 8 Sep 2023 07:05:06 +0000 (07:05 +0000)
committernicm <nicm@openbsd.org>
Fri, 8 Sep 2023 07:05:06 +0000 (07:05 +0000)
catch terminals that say they are VT520 even if we can't use DA1
(because of VTE).

usr.bin/tmux/tty-keys.c

index 539c94a..da6358c 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: tty-keys.c,v 1.171 2023/09/08 06:52:31 nicm Exp $ */
+/* $OpenBSD: tty-keys.c,v 1.172 2023/09/08 07:05:06 nicm Exp $ */
 
 /*
  * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -1399,8 +1399,17 @@ tty_keys_device_attributes2(struct tty *tty, const char *buf, size_t len,
                        break;
        }
 
-       /* Add terminal features. */
+       /*
+        * Add terminal features. We add DECSLRM and DECFRA for some
+        * identification codes here, notably 64 will catch VT520, even though
+        * we can't use level 5 from DA because of VTE.
+        */
        switch (p[0]) {
+       case 41: /* VT420 */
+       case 61: /* VT510 */
+       case 64: /* VT520 */
+               tty_add_features(features, "margins,rectfill", ",");
+               break;
        case 'M': /* mintty */
                tty_default_features(features, "mintty", 0);
                break;