]> ncurses.scripts.mit.edu Git - ncurses.git/commitdiff
ncurses 6.4 - patch 20231111
authorThomas E. Dickey <dickey@invisible-island.net>
Sat, 11 Nov 2023 23:53:16 +0000 (23:53 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sat, 11 Nov 2023 23:53:16 +0000 (23:53 +0000)
+ used "infocmp -u" to help trim redundant capabilities -TD
+ add limit checks in infocmp needed when processing extended
  capabilities with the "-u" option.
+ fix inconsistent sort-order in see-also sections of manpages.
+ fix a few compiler warnings for Solaris 10.
+ modify endwin() to return an error if it is called again without an
  intervening screen update (report by Rajeev Pillai, NetBSD #57592).

58 files changed:
MANIFEST
NEWS
VERSION
dist.mk
doc/html/man/curs_border_set.3x.html
doc/html/man/curs_color.3x.html
doc/html/man/curs_get_wch.3x.html
doc/html/man/curs_get_wstr.3x.html
doc/html/man/curs_getcchar.3x.html
doc/html/man/curs_in_wchstr.3x.html
doc/html/man/curs_initscr.3x.html
doc/html/man/curs_ins_wstr.3x.html
doc/html/man/curs_insstr.3x.html
doc/html/man/curs_memleaks.3x.html
doc/html/man/curs_outopts.3x.html
doc/html/man/curs_pad.3x.html
doc/html/man/curs_scr_dump.3x.html
doc/html/man/curs_terminfo.3x.html
doc/html/man/ncurses.3x.html
doc/html/man/term.7.html
doc/html/man/terminfo.5.html
man/curs_border_set.3x
man/curs_color.3x
man/curs_get_wch.3x
man/curs_get_wstr.3x
man/curs_getcchar.3x
man/curs_in_wchstr.3x
man/curs_initscr.3x
man/curs_ins_wstr.3x
man/curs_insstr.3x
man/curs_memleaks.3x
man/curs_outopts.3x
man/curs_pad.3x
man/curs_scr_dump.3x
man/curs_terminfo.3x
man/term.7
misc/terminfo.src
ncurses/base/lib_endwin.c
ncurses/curses.priv.h
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
package/ncursest.spec
progs/infocmp.c
test/demo_forms.c
test/dump_window.c
test/dup_field.c
test/list_keys.c
test/modules
test/move_field.c
test/ncurses.c
test/programs
test/test.priv.h
test/test_endwin.c [new file with mode: 0644]
test/test_tparm.c

index 83b01132e9bb509aeaca522a0e872730537fe9bf..a9395d2f8a09a9659e1710e1aae3dace3f1f1e4e 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
 ./test/test_addwstr.c
 ./test/test_arrays.c
 ./test/test_delwin.c
+./test/test_endwin.c
 ./test/test_get_wstr.c
 ./test/test_getstr.c
 ./test/test_instr.c
diff --git a/NEWS b/NEWS
index f953ea86092c04d36f7cd7cd97abcc8772822947..012df958d3a15bfca53824923ab563733e76f34d 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -26,7 +26,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.4025 2023/11/04 21:45:02 tom Exp $
+-- $Id: NEWS,v 1.4031 2023/11/11 23:13:58 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -46,6 +46,15 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+20231111
+       + used "infocmp -u" to help trim redundant capabilities -TD
+       + add limit checks in infocmp needed when processing extended
+         capabilities with the "-u" option.
+       + fix inconsistent sort-order in see-also sections of manpages.
+       + fix a few compiler warnings for Solaris 10.
+       + modify endwin() to return an error if it is called again without an
+         intervening screen update (report by Rajeev Pillai, NetBSD #57592).
+
 20231104
        + modify reset command to avoid altering clocal if the terminal uses a
          modem (prompted by discussion with Werner Fink, Michal Suchanek,
diff --git a/VERSION b/VERSION
index 786852eae33261d7766452c79e956c451436cf8b..5809d11d004e02d56077f0537b9ab5623dfd8104 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:10 6.4     20231104
+5:0:10 6.4     20231111
diff --git a/dist.mk b/dist.mk
index 5a7c559c76b939bf393cc74cdd5ace0ae95a4b40..af5ebc7a50de51b54dcfed3c793d1f4f2c004a40 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -26,7 +26,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.1575 2023/11/04 10:01:01 tom Exp $
+# $Id: dist.mk,v 1.1576 2023/11/11 10:45:00 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -38,7 +38,7 @@ SHELL = /bin/sh
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 6
 NCURSES_MINOR = 4
-NCURSES_PATCH = 20231104
+NCURSES_PATCH = 20231111
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index c85cbb10964c714f8906d69c4e52c9a1f55a2ca6..b61ed415962a9678d4559f1ce0cf0bd1555fa031 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_border_set.3x,v 1.27 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_border_set.3x,v 1.29 2023/11/11 11:38:35 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_border_set 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_border_set 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_border_set 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_border_set 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>              Library calls             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>, <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>, <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>, <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-07               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 1eaf1e8c5053c644f6dd8f079ae7e56757c450f6..0d9566d82f856e6ee7cb983df70657c6b38f4b57 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_color.3x,v 1.87 2023/10/21 10:28:36 tom Exp @
+  * @Id: curs_color.3x,v 1.89 2023/11/11 11:38:59 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_color 3x 2023-10-21 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_color 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_color 3x 2023-10-21 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_color 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,   <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>,    <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>,   <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,    <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
        <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-21                    <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                    <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 590cf488ad02057ff30f4bc9a5f4c14bf536c101..ea28e6353d103f6fe31fa05342807591419032b0 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_get_wch.3x,v 1.26 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_get_wch.3x,v 1.28 2023/11/11 11:39:15 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_get_wch 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_get_wch 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_get_wch 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_get_wch 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>,    <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>,    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>,
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>,    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>,    <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>,
        <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-07                  <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                  <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 0281cbb2639fa1677e6cf2a4d725b1937cb6ae3d..92dd50da7241f9c7834f4dabf51031ae08788b16 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_get_wstr.3x,v 1.37 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_get_wstr.3x,v 1.39 2023/11/11 11:39:29 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_get_wstr 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_get_wstr 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_get_wstr 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_get_wstr 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>, <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>, <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-07                 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 605ac14efdc38e03f6ee63acacce50082a8c11e3..0d165a65ff3e3ec058600f6457c8eac24ce17563 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getcchar.3x,v 1.38 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_getcchar.3x,v 1.40 2023/11/11 11:39:43 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_getcchar 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_getcchar 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_getcchar 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_getcchar 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>wcwidth(3)</STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG>wcwidth(3)</STRONG>
 
 
 
-ncurses 6.4                       2023-10-07                 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 3b37a8701caa9a2786b0345907d7bc09dfbe84b3..0a4804fa1fc0ad10d55ead774883904e3a82a2d3 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_in_wchstr.3x,v 1.26 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_in_wchstr.3x,v 1.28 2023/11/11 11:42:45 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_in_wchstr 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_in_wchstr 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_in_wchstr 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_in_wchstr 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>               Library calls              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,     <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>,     <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>,    <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
-       <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>,    <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>,    <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>,
+       <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-07                <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index fc51ad90956c2d61b532022cbb6b719bfb8248f7..0d7d5588275965c02ffa91f5c82ea21e1c9b1cea 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_initscr.3x,v 1.53 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_initscr.3x,v 1.54 2023/11/11 23:20:20 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_initscr 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_initscr 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_initscr 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_initscr 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
 
 
        X/Open defines no error conditions.  In this implementation
 
-       <STRONG>o</STRONG>   <STRONG>endwin</STRONG> returns an error if the terminal was not initialized.
+       <STRONG>o</STRONG>   <STRONG>endwin</STRONG> returns an error if
+
+           <STRONG>o</STRONG>   the terminal was not initialized, or
+
+           <STRONG>o</STRONG>   <STRONG>endwin</STRONG> is called more than once without updating the screen, or
+
+           <STRONG>o</STRONG>   <STRONG><A HREF="curs_kernel.3x.html">reset_shell_mode(3x)</A></STRONG> returns an error.
 
        <STRONG>o</STRONG>   <STRONG>newterm</STRONG> returns an error if it cannot allocate the data  structures
            for  the  screen,  or  for the top-level windows within the screen,
 
 
 
-ncurses 6.4                       2023-10-07                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 488625902d44defae732c00698db8e114adcaeaf..c38a7c3f71710cbc2aa76189db4154057f9ef631 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_ins_wstr.3x,v 1.23 2023/10/07 22:22:46 tom Exp @
+  * @Id: curs_ins_wstr.3x,v 1.25 2023/11/11 11:43:21 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_ins_wstr 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_ins_wstr 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_ins_wstr 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_ins_wstr 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>, <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>, <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>, <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>, <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-07                 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index a8ea74802f4d26f6c839d5b017eb4d1d93f7600d..bd93c58c32a6a447311ae3e05afc5b66fc2dc3f9 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_insstr.3x,v 1.40 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_insstr.3x,v 1.42 2023/11/11 11:46:07 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_insstr 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_insstr 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_insstr 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_insstr 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-07                   <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                   <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index e3415935afda2636373531d7bb3bc25207ec6885..95c15b8f6225d337e635fa43b37754dd36f52cca 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_memleaks.3x,v 1.29 2023/10/21 10:28:36 tom Exp @
+  * @Id: curs_memleaks.3x,v 1.31 2023/11/11 11:46:43 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_memleaks 3x 2023-10-21 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_memleaks 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_memleaks 3x 2023-10-21 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_memleaks 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-21                 <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                 <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index ace13cc863e952273644368f3c1a363238bd113e..f4ab7c98516f0456b2ce7b92bba95ffd151b1ed7 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_outopts.3x,v 1.48 2023/10/07 22:54:10 tom Exp @
+  * @Id: curs_outopts.3x,v 1.50 2023/11/11 11:46:54 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_outopts 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_outopts 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_outopts 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_outopts 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>,    <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>,     <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,
-       <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
+       <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-07                  <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                  <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index aa5dd7c053e9637cfa2a0c69af7933e874cd15dd..de86709dc45c3dd8ad8815c7fd1b6bc36622e8f2 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_pad.3x,v 1.45 2023/10/21 10:29:45 tom Exp @
+  * @Id: curs_pad.3x,v 1.47 2023/11/11 11:47:10 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_pad 3x 2023-10-21 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_pad 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_pad 3x 2023-10-21 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_pad 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>                     Library calls                    <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-21                      <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                      <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 39cc973506ebec5de1b3971cabbb63fdda83add1..926d977d7e1a6568d1b0947aa0189d1edad41cb6 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scr_dump.3x,v 1.31 2023/10/07 21:19:07 tom Exp @
+  * @Id: curs_scr_dump.3x,v 1.33 2023/11/11 11:47:41 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_scr_dump 3x 2023-10-07 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_scr_dump 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_scr_dump 3x 2023-10-07 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_scr_dump 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,    <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,    <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>,
-       <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>, <STRONG>system(3)</STRONG>
+       <STRONG>system(3)</STRONG>, <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-07                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 87e3e293011e68000a16f04f270243644613b4f1..a6a489af6a76b6bb564171471b73720b88ca37d5 100644 (file)
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_terminfo.3x,v 1.115 2023/10/21 10:31:22 tom Exp @
+  * @Id: curs_terminfo.3x,v 1.117 2023/11/11 11:48:04 tom Exp @
   * ***************************************************************************
   * ***************************************************************************
   * ***************************************************************************
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_terminfo 3x 2023-10-21 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_terminfo 3x 2023-11-11 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_terminfo 3x 2023-10-21 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_terminfo 3x 2023-11-11 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,   <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>,   <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>,
-       <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>,  <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,   <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>,   <STRONG>putc(3)</STRONG>,
+       <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>,  <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,   <STRONG>putc(3)</STRONG>,   <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>,
        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-21                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
+ncurses 6.4                       2023-11-11                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index f7667988dd74b5bf6d1b34bc059d49ef50450b97..f0124e57d12408ccc177cc8b54dcb8f86d90e000 100644 (file)
@@ -60,7 +60,7 @@
        method of updating  character  screens  with  reasonable  optimization.
        This  implementation  is  "new  curses"  (ncurses)  and is the approved
        replacement for 4.4BSD classic curses,  which  has  been  discontinued.
-       This describes <STRONG>ncurses</STRONG> version 6.4 (patch 20231028).
+       This describes <STRONG>ncurses</STRONG> version 6.4 (patch 20231111).
 
        The  <STRONG>ncurses</STRONG>  library emulates the curses library of System V Release 4
        UNIX, and XPG4 (X/Open Portability Guide) curses  (also  known  as  XSI
index aa9ae4db9333758c491fdd47655247c36140e761..459fb42221e5680b6d2d68ea8cb64af2b145fbe1 100644 (file)
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: term.7,v 1.40 2023/10/14 19:18:14 tom Exp @
+  * @Id: term.7,v 1.42 2023/11/11 11:48:16 tom Exp @
   *SH SYNOPSIS
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>term 7 2023-10-14 ncurses 6.4 Miscellaneous</TITLE>
+<TITLE>term 7 2023-11-11 ncurses 6.4 Miscellaneous</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">term 7 2023-10-14 ncurses 6.4 Miscellaneous</H1>
+<H1 class="no-header">term 7 2023-11-11 ncurses 6.4 Miscellaneous</H1>
 <PRE>
 <STRONG><A HREF="term.7.html">term(7)</A></STRONG>                          Miscellaneous                         <STRONG><A HREF="term.7.html">term(7)</A></STRONG>
 
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
 
 
-ncurses 6.4                       2023-10-14                           <STRONG><A HREF="term.7.html">term(7)</A></STRONG>
+ncurses 6.4                       2023-11-11                           <STRONG><A HREF="term.7.html">term(7)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
index 610b5d8e0da6ee3b6450cc55bb4ad7027dd8715c..859a54554379300821cb044c0e193dde7016feb0 100644 (file)
        have, by specifying how to perform screen operations, and by specifying
        padding requirements and initialization sequences.
 
-       This manual describes <STRONG>ncurses</STRONG> version 6.4 (patch 20231028).
+       This manual describes <STRONG>ncurses</STRONG> version 6.4 (patch 20231111).
 
 
 </PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
index 98f8c39ca81fd427913b86c6242c673f61df2eef..f833acbae8403bf6cc9579a46ccbe8a96efb2411 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_border_set.3x,v 1.27 2023/10/07 21:19:07 tom Exp $
-.TH curs_border_set 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_border_set.3x,v 1.29 2023/11/11 11:38:35 tom Exp $
+.TH curs_border_set 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -194,7 +194,7 @@ Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
 or if the window pointer is null.
 .SH SEE ALSO
-\fB\%ncurses\fP(3X),
+\fB\%curses\fP(3X),
 \fB\%curs_add_wch\fP(3X),
 \fB\%curs_border\fP(3X),
 \fB\%curs_outopts\fP(3X)
index 39fac3904717c415cdfe56cce7dd4b5821ac2a24..8cb561f6eab71e876a943dad2022d8820e69bdf9 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_color.3x,v 1.87 2023/10/21 10:28:36 tom Exp $
-.TH curs_color 3X 2023-10-21 "ncurses 6.4" "Library calls"
+.\" $Id: curs_color.3x,v 1.89 2023/11/11 11:38:59 tom Exp $
+.TH curs_color 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -531,7 +531,7 @@ allowing applications to use larger color- and pair-numbers.
 The \fB\%reset_color_pairs\fP function is an extension of ncurses.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
-\fB\%curs_initscr\fP(3X),
 \fB\%curs_attr\fP(3X),
+\fB\%curs_initscr\fP(3X),
 \fB\%curs_variables\fP(3X),
 \fB\%default_colors\fP(3X)
index 7f73ff2ce000fc7f6e3f868480cd316536baf3fb..63036343cfb1652494a0664f8823cc8a41dd0845 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_get_wch.3x,v 1.26 2023/10/07 21:19:07 tom Exp $
-.TH curs_get_wch 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_get_wch.3x,v 1.28 2023/11/11 11:39:15 tom Exp $
+.TH curs_get_wch 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -191,7 +191,7 @@ or if the window pointer is null.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_getch\fP(3X),
-\fB\%curs_ins_wch\fP(3X),
 \fB\%curs_inopts\fP(3X),
+\fB\%curs_ins_wch\fP(3X),
 \fB\%curs_move\fP(3X),
 \fB\%curs_refresh\fP(3X)
index 5364de8b83c04e8003c6eec3d85e995488f946de..697dfd1c6c56b1448d4723f68889b11846c424d7 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_get_wstr.3x,v 1.37 2023/10/07 21:19:07 tom Exp $
-.TH curs_get_wstr 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_get_wstr.3x,v 1.39 2023/11/11 11:39:29 tom Exp $
+.TH curs_get_wstr 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -218,5 +218,5 @@ NetBSD 7 curses imitates ncurses 6.1 in this regard,
 treating a \fB\-1\fP as an indefinite number of characters.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
-\fB\%curs_get_wch\fP(3X),
-\fB\%curs_getstr\fP(3X)
+\fB\%curs_getstr\fP(3X),
+\fB\%curs_get_wch\fP(3X)
index 8840a93345fa98e0b2953450950613cc61f451f7..3ec21e4b8132f85cf611b2edcb184e3c19500f70 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getcchar.3x,v 1.38 2023/10/07 21:19:07 tom Exp $
-.TH curs_getcchar 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_getcchar.3x,v 1.40 2023/11/11 11:39:43 tom Exp $
+.TH curs_getcchar 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -182,7 +182,7 @@ including using them for ligatures between characters
 Unicode does not limit the (analogous) number of combining characters,
 so some applications may be affected.
 .SH SEE ALSO
+\fB\%curses\fP(3X),
 \fB\%curs_attr\fP(3X),
 \fB\%curs_color\fP(3X),
-\fB\%curses\fP(3X),
 \fB\%wcwidth\fP(3)
index c2380120d4e395510fdfb7bcd91c487aefb9d5d9..91f22c14294e63475b1e1f88b92de549ba5a5617 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_in_wchstr.3x,v 1.26 2023/10/07 21:19:07 tom Exp $
-.TH curs_in_wchstr 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_in_wchstr.3x,v 1.28 2023/11/11 11:42:45 tom Exp $
+.TH curs_in_wchstr 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -115,7 +115,7 @@ This implementation checks for null pointers,
 returning \fBERR\fP in that case.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
-\fB\%curs_in_wch\fP(3X),
+\fB\%curs_inchstr\fP(3X),
 \fB\%curs_instr\fP(3X),
-\fB\%curs_inwstr\fP(3X)
-\fB\%curs_inchstr\fP(3X)
+\fB\%curs_inwstr\fP(3X),
+\fB\%curs_in_wch\fP(3X)
index 3bf80125cd7280b2a2c5bddf05fd414db97ebc0c..aab21a66472ccd64a1a80a1ae6cc59857f5f691b 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_initscr.3x,v 1.53 2023/10/07 21:19:07 tom Exp $
-.TH curs_initscr 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_initscr.3x,v 1.54 2023/11/11 23:20:20 tom Exp $
+.TH curs_initscr 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -155,7 +155,15 @@ Routines that return pointers always return \fBNULL\fP on error.
 X/Open defines no error conditions.
 In this implementation
 .bP
-\fBendwin\fP returns an error if the terminal was not initialized.
+\fBendwin\fP returns an error if
+.RS
+.bP
+the terminal was not initialized, or
+.bP
+\fBendwin\fP is called more than once without updating the screen, or
+.bP
+\fBreset_shell_mode\fP(3X) returns an error.
+.RE
 .bP
 \fBnewterm\fP
 returns an error if it cannot allocate the data structures for the screen,
index 6b6cf806c0914a283d5d2c30d876b74c05ac7cc6..db27fb948bb1897281678491a1881b3984e77d38 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_ins_wstr.3x,v 1.23 2023/10/07 22:22:46 tom Exp $
-.TH curs_ins_wstr 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_ins_wstr.3x,v 1.25 2023/11/11 11:43:21 tom Exp $
+.TH curs_ins_wstr 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -104,5 +104,5 @@ or if the window pointer is null.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_insstr\fP(3X),
-\fB\%curs_in_wch\fP(3X),
-\fB\%curs_ins_wch\fP(3X)
+\fB\%curs_ins_wch\fP(3X),
+\fB\%curs_in_wch\fP(3X)
index 348d78fae1d90f2aa277ae34494f8e7e97fe4b18..c8fc50bf243a7aa9d492bd41ed71f497ce4fba85 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_insstr.3x,v 1.40 2023/10/07 21:19:07 tom Exp $
-.TH curs_insstr 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_insstr.3x,v 1.42 2023/11/11 11:46:07 tom Exp $
+.TH curs_insstr 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -101,6 +101,6 @@ This is probably an error, since it makes this group of functions inconsistent.
 Also, no implementation of curses documents this inconsistency.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
-\fB\%curs_util\fP(3X),
 \fB\%curs_clear\fP(3X),
-\fB\%curs_inch\fP(3X)
+\fB\%curs_inch\fP(3X),
+\fB\%curs_util\fP(3X)
index 82c37042a27b3d2c8afb33c2ae9a506d7247d09b..0f52899c73080fffa1d92003a5bab48568079040 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_memleaks.3x,v 1.29 2023/10/21 10:28:36 tom Exp $
-.TH curs_memleaks 3X 2023-10-21 "ncurses 6.4" "Library calls"
+.\" $Id: curs_memleaks.3x,v 1.31 2023/11/11 11:46:43 tom Exp $
+.TH curs_memleaks 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -124,6 +124,6 @@ using \fB\%del_curterm\fP.
 In this case, there is a global variable \fB\%cur_term\fP which can be
 used as parameter.
 .SH SEE ALSO
+\fB\%curses\fP(3X),
 \fB\%curs_initscr\fP(3X),
-\fB\%curs_terminfo\fP(3X),
-\fB\%curses\fP(3X)
+\fB\%curs_terminfo\fP(3X)
index 3a914148186abac0269cc2dad0130d60543263a2..85c350b4800deee90535c288d99dd0e9a47adaef 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_outopts.3x,v 1.48 2023/10/07 22:54:10 tom Exp $
-.TH curs_outopts 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_outopts.3x,v 1.50 2023/11/11 11:46:54 tom Exp $
+.TH curs_outopts 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -203,6 +203,6 @@ emulators.
 \fB\%curs_addch\fP(3X),
 \fB\%curs_clear\fP(3X),
 \fB\%curs_initscr\fP(3X),
-\fB\%curs_scroll\fP(3X),
 \fB\%curs_refresh\fP(3X),
+\fB\%curs_scroll\fP(3X),
 \fB\%curs_variables\fP(3X)
index f00590af45182b9c0a1165a93b1fe7bd2c177e50..95d70bba0607908caab6c72e18e2c6e9758e2d95 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_pad.3x,v 1.45 2023/10/21 10:29:45 tom Exp $
-.TH curs_pad 3X 2023-10-21 "ncurses 6.4" "Library calls"
+.\" $Id: curs_pad.3x,v 1.47 2023/11/11 11:47:10 tom Exp $
+.TH curs_pad 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -231,6 +231,6 @@ ensures that \fB\%dupwin\fP and \fB\%getwin\fP treat
 pads versus windows consistently.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
+\fB\%curs_addch\fP(3X),
 \fB\%curs_refresh\fP(3X),
-\fB\%curs_touch\fP(3X),
-\fB\%curs_addch\fP(3X)
+\fB\%curs_touch\fP(3X)
index 8733e9f7166192de45af053b625f6a26c01b6ad6..66603f1a13c53bee8171932d40355de152fb6afd 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scr_dump.3x,v 1.31 2023/10/07 21:19:07 tom Exp $
-.TH curs_scr_dump 3X 2023-10-07 "ncurses 6.4" "Library calls"
+.\" $Id: curs_scr_dump.3x,v 1.33 2023/11/11 11:47:41 tom Exp $
+.TH curs_scr_dump 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -114,5 +114,5 @@ considered invalid "if the time-stamp of the tty is old" but do not define
 \fB\%curs_initscr\fP(3X),
 \fB\%curs_refresh\fP(3X),
 \fB\%curs_util\fP(3X),
-\fB\%scr_dump\fP(5),
-\fB\%system\fP(3)
+\fB\%system\fP(3),
+\fB\%scr_dump\fP(5)
index c5fcc962953bac210409a491c92d88188beff919..606e3afc0705e5774be34043f6b40d7f8fe5956b 100644 (file)
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_terminfo.3x,v 1.115 2023/10/21 10:31:22 tom Exp $
-.TH curs_terminfo 3X 2023-10-21 "ncurses 6.4" "Library calls"
+.\" $Id: curs_terminfo.3x,v 1.117 2023/11/11 11:48:04 tom Exp $
+.TH curs_terminfo 3X 2023-11-11 "ncurses 6.4" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -781,6 +781,6 @@ In that case, the old location is unknown.
 \fB\%curs_memleaks\fP(3X),
 \fB\%curs_termcap\fP(3X),
 \fB\%curs_variables\fP(3X),
-\fB\%term_variables\fP(3X),
 \fB\%putc\fP(3),
+\fB\%term_variables\fP(3X),
 \fB\%terminfo\fP(\*n)
index 963368bb23c282de8c137b3939d5ca47d842ecf6..110bc6f363e2b461d15f610fa57d6ad7061026da 100644 (file)
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: term.7,v 1.40 2023/10/14 19:18:14 tom Exp $
-.TH term 7 2023-10-14 "ncurses 6.4" Miscellaneous
+.\" $Id: term.7,v 1.42 2023/11/11 11:48:16 tom Exp $
+.TH term 7 2023-11-11 "ncurses 6.4" Miscellaneous
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -230,5 +230,5 @@ tty line initialization (AT&T-like UNIXes)
 tty line initialization (BSD-like UNIXes)
 .SH SEE ALSO
 \fB\%curses\fP(3X),
-\fB\%terminfo\fP(\*n),
-\fB\%term\fP(\*n)
+\fB\%term\fP(\*n),
+\fB\%terminfo\fP(\*n)
index fa5c67e41f4f79b91897f8b92bb9ae8b65a49f90..7a75d2c16327bb3ca44c2c11121908648ac97ba3 100644 (file)
@@ -6,8 +6,8 @@
 # Report bugs and new terminal descriptions to
 #      bug-ncurses@gnu.org
 #
-#      $Revision: 1.1067 $
-#      $Date: 2023/10/28 21:45:20 $
+#      $Revision: 1.1081 $
+#      $Date: 2023/11/11 20:54:00 $
 #
 # The original header is preserved below for reference.  It is noted that there
 # is a "newer" version which differs in some cosmetic details (but actually
@@ -616,11 +616,11 @@ ansi-m|ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes,
        cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC,
        cuu=\E[%p1%dA, dch=\E[%p1%dP, dl=\E[%p1%dM,
        ech=\E[%p1%dX, el1=\E[1K, hpa=\E[%i%p1%dG, ht=\E[I,
-       ich=\E[%p1%d@, il=\E[%p1%dL, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-       kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kich1=\E[L, mc4=\E[4i,
-       mc5=\E[5i, nel=\r\E[S, rep=%p1%c\E[%p2%{1}%-%db,
-       s0ds=\E(B, s1ds=\E)B, s2ds=\E*B, s3ds=\E+B, tbc=\E[3g,
-       vpa=\E[%i%p1%dd, use=ecma+index, use=pcansi-m,
+       ich=\E[%p1%d@, il=\E[%p1%dL, kcbt=\E[Z, kich1=\E[L,
+       mc4=\E[4i, mc5=\E[5i, nel=\r\E[S,
+       rep=%p1%c\E[%p2%{1}%-%db, s0ds=\E(B, s1ds=\E)B,
+       s2ds=\E*B, s3ds=\E+B, vpa=\E[%i%p1%dd, use=ecma+index,
+       use=pcansi-m,
 
 # ECMA-48 addresses three of the four capabilities here:
 #
@@ -1013,13 +1013,13 @@ linux-basic|Linux console (basic),
        kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[[B,
        kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~,
        kf8=\E[19~, kf9=\E[20~, kmous=\E[M, kspd=^Z, nel=\r\n,
-       rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, rmir=\E[4l,
-       rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, sc=\E7,
+       rc=\E8, ri=\EM, rmam=\E[?7l, rmir=\E[4l, rmso=\E[27m,
+       rmul=\E[24m, rs1=\Ec\E]R, sc=\E7,
        sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
            %t;2%;%?%p6%t;1%;%?%p9%t;11%;m,
-       smam=\E[?7h, smir=\E[4h, smul=\E[4m, tbc=\E[3g,
-       vpa=\E[%i%p1%dd, use=vt220+pcedit, use=vt102+enq,
-       use=klone+sgr, use=ecma+color, use=linux+sfkeys,
+       smam=\E[?7h, smir=\E[4h, tbc=\E[3g, vpa=\E[%i%p1%dd,
+       use=vt220+pcedit, use=vt102+enq, use=klone+sgr,
+       use=ecma+color, use=linux+sfkeys,
 
 linux+decid|ncurses extension for Linux console DECID,
        u8=\E[?6c, use=decid+cpr,
@@ -1698,16 +1698,15 @@ iris-ansi|iris-ansi-net|IRIS emulating 40 line ANSI terminal (almost VT100),
        sgr0=\E[m, smam=\E[?7h, smso=\E[1;7m, smul=\E[4m,
        tbc=\E[3g,
 iris-ansi-ap|IRIS ANSI in application-keypad mode,
-       is2=\E[?1l\E=\E[?7h, kent=\EOM, kf10=\E[010q,
-       kf11=\E[011q, kf12=\E[012q, kf9=\E[009q, use=iris-ansi,
+       is2=\E[?1l\E=\E[?7h, kent=\EOM, use=iris-ansi,
 
 # From the man-page, this is a quasi-vt100 emulator that runs on SGI's IRIX
 # (T.Dickey 98/1/24)
 iris-color|xwsh|IRIX ANSI with color,
        ncv#33,
        csr=\E[%i%p1%d;%p2%dr, dch=\E[%p1%dP, dim=\E[2m,
-       ech=\E[%p1%dX, ich=\E[%p1%d@, rc=\E8, rmul=\E[24m, rs1=\Ec,
-       rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
+       ech=\E[%p1%dX, ich=\E[%p1%d@, rmul=\E[24m, rs1=\Ec,
+       rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
        use=ecma+italics, use=vt100+enq, use=klone+color,
        use=iris-ansi-ap,
 
@@ -1953,13 +1952,12 @@ ofcons|DNARD OpenFirmware console,
 # the level of detail in a termcap, it is a passable emulator, since ECH does
 # work.  Don't use it on a VMS system -TD
 wsvt25|NetBSD wscons in 25 line DEC VT220 mode,
-       bce, msgr,
-       colors#8, cols#80, it#8, lines#25, ncv#2, pairs#64,
+       bce,
+       colors#8, lines#25, ncv#2, pairs#64,
        is2=\E[r\E[25;1H, kdch1=\E[3~, kend=\E[8~, kf1=\E[11~,
-       kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~,
-       kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
-       kf8=\E[19~, kf9=\E[20~, khome=\E[7~, op=\E[m, rs1=\Ec,
-       setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=vt220,
+       kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~,
+       khome=\E[7~, op=\E[m, rs1=\Ec, setab=\E[4%p1%dm,
+       setaf=\E[3%p1%dm, use=vt220,
 
 wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta,
        km, use=wsvt25,
@@ -2256,13 +2254,12 @@ teken-2018|teken as of 2018,
        bw@, mir, xenl, NQ,
        acsc=0\333a\260f\370g\361h\261j\331k\277l\332m\300n\305q
             \304t\303u\264v\301w\302x\263y\363z\362~\371,
-       cvvis@, hpa=\E[%i%p1%dG, hts=\EH, kcub1=\E[D, kcud1=\E[B,
-       kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[F, kent=\r,
+       cvvis@, hpa=\E[%i%p1%dG, hts=\EH, kdch1=\E[3~, kent=\r,
        kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ,
        kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
-       kf8=\E[19~, kf9=\E[20~, khome=\E[H, kich1=\E[2~, knp=\E[6~,
-       kpp=\E[5~, rmir=\E[4l, smir=\E[4h, tbc=\E[3g,
-       vpa=\E[%i%p1%dd, use=vt220+cvis, use=cons25,
+       kf8=\E[19~, kf9=\E[20~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
+       rmir=\E[4l, smir=\E[4h, tbc=\E[3g, use=vt220+cvis,
+       use=cons25,
 
 teken-2022|teken as of 2022,
        am, bce, eo, mir, msgr, npc, NQ,
@@ -3738,7 +3735,7 @@ nsterm|nsterm-256color|Apple_Terminal|AppKit Terminal.app,
 #      can display/alter xterm-256color cube
 #      can display/alter xterm-88color cube
 iTerm.app|iterm|iTerm.app terminal emulator for Mac OS X,
-       am, bce, hs, mir, msgr, npc, xenl, xon,
+       am, bce, mir, msgr, npc, xenl, xon,
        cols#80, it#8, lines#24, wsl#50,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=\r,
@@ -3801,13 +3798,13 @@ iTerm.app|iterm|iTerm.app terminal emulator for Mac OS X,
 # 2018/01/21: found xterm+sm+1006 did not work with version 3.1.5
 # 2018/05/19: xterm+sm+1006 seems to work with 3.1.6beta -TD
 iTerm2.app|iterm2|terminal emulator for Mac OS X,
-       blink=\E[5m, cbt=\E[Z, dim=\E[2m, kEND=\E[1;2F,
-       kHOM=\E[1;2H, ka1@, ka3@, kb2@, kc1@, kc3@, kent@, kf13=\E[1;2P,
-       kf14=\E[1;2Q, kf15=\E[1;2R, kf16=\E[1;2S, kf17=\E[15;2~,
-       kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ, kf20=\E[19;2~,
-       kf21=\E[20;2~, kf22=\E[21;2~, kf23=\E[23;2~,
-       kf24=\E[24;2~, kind=\E[1;2B, kri=\E[1;2A, nel=\EE,
-       op=\E[39;49m, rmso=\E[27m, rmul=\E[24m,
+       cbt=\E[Z, dim=\E[2m, kEND=\E[1;2F, kHOM=\E[1;2H, ka1@, ka3@,
+       kb2@, kc1@, kc3@, kent@, kf13=\E[1;2P, kf14=\E[1;2Q,
+       kf15=\E[1;2R, kf16=\E[1;2S, kf17=\E[15;2~, kf18=\E[17;2~,
+       kf19=\E[18;2~, kf20=\E[19;2~, kf21=\E[20;2~,
+       kf22=\E[21;2~, kf23=\E[23;2~, kf24=\E[24;2~,
+       kind=\E[1;2B, kri=\E[1;2A, nel=\EE, op=\E[39;49m,
+       rmso=\E[27m, rmul=\E[24m,
        rs2=\E[!p\E[?3;4l\E[4l\E>\E[?1000l,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
            %p5%t;2%;m%?%p9%t\016%e\017%;,
@@ -4095,9 +4092,8 @@ xnuppc-256x96|darwin-256x96|Darwin PowerPC console (color) 256x96,
 ######## DOS/WINDOWS
 # CRT is shareware.  It implements some xterm features, including mouse.
 crt|crt-vt220|CRT 2.3 emulating VT220,
-       bce, msgr,
-       ncv@,
-       hts=\EH, use=vt100+enq, use=vt220-base, use=ecma+color,
+       bce,
+       ncv@, use=vt100+enq, use=vt220-base, use=ecma+color,
 
 # SecureCRT 8.7.3.2279
 # 8.7.3 was released 2020/08/11
@@ -4158,10 +4154,9 @@ crt|crt-vt220|CRT 2.3 emulating VT220,
 #      resize.pl gets no reply, resize.sh needs fix for no reply.
 scrt|securecrt|SecureCRT emulating xterm-256color,
        bce@, km@, npc,
-       bel@, cvvis@, kcbt=\E[Z, kent=\EOM, use=linux+kbs,
-       use=vt220+pcedit, use=xterm+256setaf, use=ecma+index,
-       use=ansi+rep, use=xterm+keypad, use=xterm+pcfkeys,
-       use=xterm-basic,
+       bel@, cvvis@, kcbt=\E[Z, use=linux+kbs, use=vt220+pcedit,
+       use=xterm+256setaf, use=ecma+index, use=ansi+rep,
+       use=xterm+keypad, use=xterm+pcfkeys, use=xterm-basic,
 
 # Absolute Telnet
 # (eval 2021/02/20)
@@ -4967,18 +4962,17 @@ xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System),
        npc,
        kDC=\E[3;5~, kEND=\EO5F, kHOM=\EO5H, kIC=\E[2;5~,
        kLFT=\EO5D, kNXT=\E[6;5~, kPRV=\E[5;5~, kRIT=\EO5C, ka1@,
-       ka3@, kb2=\EOE, kc1@, kc3@, kcbt=\E[Z, kdch1=\E[3~, kend=\EOF,
-       kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S,
-       kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~,
-       kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~,
-       kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q,
-       kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, kf30=\E[17;5~,
-       kf31=\E[18;5~, kf32=\E[19;5~, kf33=\E[20;5~,
-       kf34=\E[21;5~, kf35=\E[23;5~, kf36=\E[24;5~, kf37=\EO6P,
-       kf38=\EO6Q, kf39=\EO6R, kf40=\EO6S, kf41=\E[15;6~,
-       kf42=\E[17;6~, kf43=\E[18;6~, kf44=\E[19;6~,
-       kf45=\E[20;6~, kf46=\E[21;6~, kf47=\E[23;6~,
-       kf48=\E[24;6~, khome=\EOH,
+       ka3@, kb2=\EOE, kc1@, kc3@, kcbt=\E[Z, kf13=\EO2P, kf14=\EO2Q,
+       kf15=\EO2R, kf16=\EO2S, kf17=\E[15;2~, kf18=\E[17;2~,
+       kf19=\E[18;2~, kf20=\E[19;2~, kf21=\E[20;2~,
+       kf22=\E[21;2~, kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P,
+       kf26=\EO5Q, kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~,
+       kf30=\E[17;5~, kf31=\E[18;5~, kf32=\E[19;5~,
+       kf33=\E[20;5~, kf34=\E[21;5~, kf35=\E[23;5~,
+       kf36=\E[24;5~, kf37=\EO6P, kf38=\EO6Q, kf39=\EO6R,
+       kf40=\EO6S, kf41=\E[15;6~, kf42=\E[17;6~, kf43=\E[18;6~,
+       kf44=\E[19;6~, kf45=\E[20;6~, kf46=\E[21;6~,
+       kf47=\E[23;6~, kf48=\E[24;6~,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?
            %p9%t\016%e\017%;,
        use=xterm+alt1049, use=xterm-xf86-v333,
@@ -5014,14 +5008,12 @@ xterm-xfree86|xterm terminal emulator (XFree86),
 
 xterm+nofkeys|building block for xterm fkey-variants,
        npc,
-       kcbt=\E[Z, kent=\EOM, nel=\EE, use=ecma+index,
-       use=ansi+rep, use=ecma+strikeout, use=vt420+lrmm,
-       use=xterm+focus, use=xterm+sm+1006, use=xterm+tmux,
-       use=ecma+italics, use=xterm+keypad, use=xterm-basic,
+       kcbt=\E[Z, nel=\EE, use=ecma+index, use=ansi+rep,
+       use=ecma+strikeout, use=vt420+lrmm, use=xterm+focus,
+       use=xterm+sm+1006, use=xterm+tmux, use=ecma+italics,
+       use=xterm+keypad, use=xterm-basic,
 
 xterm-p370|xterm patch #370,
-       npc,
-       kcbt=\E[Z, kent=\EOM, nel=\EE,
        rv=\E\\[41;[1-6][0-9][0-9];0c,
        xr=\EP>\\|XTerm\\([1-9][0-9]+\\)\E\\\\,
        use=ecma+index, use=ansi+rep, use=ecma+strikeout,
@@ -5207,17 +5199,16 @@ xterm+pcf2|fragment with modifyFunctionKeys:2,
 # Chunks from xterm #230:
 xterm+pce2|fragment with modifyCursorKeys:2 editing-keys,
        kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~,
-       kNXT=\E[6;2~, kPRV=\E[5;2~, kich1=\E[2~, knp=\E[6~,
-       kpp=\E[5~, kDC3=\E[3;3~, kDC4=\E[3;4~, kDC5=\E[3;5~,
-       kDC6=\E[3;6~, kDC7=\E[3;7~, kEND3=\E[1;3F, kEND4=\E[1;4F,
-       kEND5=\E[1;5F, kEND6=\E[1;6F, kEND7=\E[1;7F,
-       kHOM3=\E[1;3H, kHOM4=\E[1;4H, kHOM5=\E[1;5H,
-       kHOM6=\E[1;6H, kHOM7=\E[1;7H, kIC3=\E[2;3~, kIC4=\E[2;4~,
-       kIC5=\E[2;5~, kIC6=\E[2;6~, kIC7=\E[2;7~, kNXT3=\E[6;3~,
-       kNXT4=\E[6;4~, kNXT5=\E[6;5~, kNXT6=\E[6;6~,
-       kNXT7=\E[6;7~, kPRV3=\E[5;3~, kPRV4=\E[5;4~,
-       kPRV5=\E[5;5~, kPRV6=\E[5;6~, kPRV7=\E[5;7~,
-       use=xterm+edit,
+       kNXT=\E[6;2~, kPRV=\E[5;2~, kDC3=\E[3;3~, kDC4=\E[3;4~,
+       kDC5=\E[3;5~, kDC6=\E[3;6~, kDC7=\E[3;7~, kEND3=\E[1;3F,
+       kEND4=\E[1;4F, kEND5=\E[1;5F, kEND6=\E[1;6F,
+       kEND7=\E[1;7F, kHOM3=\E[1;3H, kHOM4=\E[1;4H,
+       kHOM5=\E[1;5H, kHOM6=\E[1;6H, kHOM7=\E[1;7H,
+       kIC3=\E[2;3~, kIC4=\E[2;4~, kIC5=\E[2;5~, kIC6=\E[2;6~,
+       kIC7=\E[2;7~, kNXT3=\E[6;3~, kNXT4=\E[6;4~,
+       kNXT5=\E[6;5~, kNXT6=\E[6;6~, kNXT7=\E[6;7~,
+       kPRV3=\E[5;3~, kPRV4=\E[5;4~, kPRV5=\E[5;5~,
+       kPRV6=\E[5;6~, kPRV7=\E[5;7~, use=xterm+edit,
 
 xterm+edit|fragment for 6-key editing-keypad,
        kdch1=\E[3~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
@@ -5677,17 +5668,15 @@ xterm-sco|xterm with SCO function keys,
 #
 xterm-vt220|xterm emulating VT220,
        npc,
-       kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-       kend=\E[4~, kent=\EOM, kf10=\E[21~, kf11=\E[23~,
+       kcbt=\E[Z, kend=\E[4~, kf10=\E[21~, kf11=\E[23~,
        kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
        kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
        kf20=\E[34~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~,
-       kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~,
-       kmous=\E[M, knp=\E[6~, kpp=\E[5~, nel=\EE, use=xterm+app,
-       use=xterm+edit, use=vt220+keypad, use=ecma+italics,
-       use=ecma+index, use=ansi+rep, use=ecma+strikeout,
-       use=xterm+focus, use=xterm+sm+1006, use=xterm+tmux,
-       use=xterm+keypad, use=xterm-basic,
+       kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kmous=\E[M, nel=\EE,
+       use=xterm+app, use=xterm+edit, use=vt220+keypad,
+       use=ecma+italics, use=ecma+index, use=ansi+rep,
+       use=ecma+strikeout, use=xterm+focus, use=xterm+sm+1006,
+       use=xterm+tmux, use=xterm+keypad, use=xterm-basic,
 
 xterm-vt52|xterm emulating DEC VT52,
        cols#80, it#8, lines#24,
@@ -5987,9 +5976,8 @@ oldxterm+sm+1006|xterm SGR-mouse (building block),
 kterm|kterm kanji terminal emulator (X window system),
        XT,
        ncv@,
-       acsc=``aajjkkllmmnnooppqqrrssttuuvvwwxx~~,
-       csr=\E[%i%p1%d;%p2%dr, enacs=, kmous=\E[M, rc=\E8,
-       rmacs=\E(B, rmam=\E[?7l, sc=\E7,
+       acsc=``aajjkkllmmnnooppqqrrssttuuvvwwxx~~, enacs=,
+       rmacs=\E(B, rmam=\E[?7l,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e
            \E(B%;,
        sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, use=x10term+sl,
@@ -6171,8 +6159,7 @@ gnome-rh62|GNOME terminal,
 #      it hangs in tack after running function-keys test.
 gnome-rh72|GNOME Terminal in RedHat 7,
        bce, km@,
-       kdch1=\E[3~, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-       rmam=\E[?7l,
+       kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmam=\E[?7l,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\016%e
            \017%;,
        sgr0=\E[0m\017, smam=\E[?7h, tbc@, use=vt220+cvis,
@@ -6193,18 +6180,17 @@ gnome-rh72|GNOME Terminal in RedHat 7,
 # that it implements kcbt.
 gnome-rh80|GNOME Terminal in RedHat 8,
        bce@, msgr@,
-       ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, kbs=^?,
-       kcbt=\E^I, op=\E[39;49m, use=gnome-rh72,
+       ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, kcbt=\E^I,
+       op=\E[39;49m, use=gnome-rh72,
 
 # GNOME Terminal 2.2.1 (Redhat 9.0)
 #
 # bce and msgr are repaired.
 gnome-rh90|GNOME Terminal in RedHat 9,
        bce, msgr, XT,
-       hpa=\E[%i%p1%dG, kDC=\E[3;2~, kLFT=\EO2D, kRIT=\EO2C,
-       kb2=\E[E, kcbt=\E[Z, kend=\EOF, khome=\EOH, tbc=\E[3g,
-       vpa=\E[%i%p1%dd, use=xterm+pcf0, use=xterm+pcfkeys,
-       use=gnome-rh80,
+       hpa=\E[%i%p1%dG, kLFT=\EO2D, kRIT=\EO2C, kb2=\E[E,
+       kcbt=\E[Z, tbc=\E[3g, vpa=\E[%i%p1%dd, use=xterm+pcf0,
+       use=xterm+pcfkeys, use=gnome-rh80,
 
 # GNOME Terminal 2.14.2 (Fedora Core 5)
 # Ed Catmur notes that gnome-terminal has recognized soft-reset since May 2002.
@@ -6273,10 +6259,9 @@ gnome-2012|GNOME Terminal 3.6.0,
 # The parameters with \EO (SS3) are technically an error, since SS3 should have
 # no parameters.  This appears to be rote copying based on xterm+pcc0.
 vte+pcfkeys|VTE's variation on xterm+pcfkeys (building block),
-       kf1=\EOP, kf13=\EO1;2P, kf14=\EO1;2Q, kf15=\EO1;2R,
-       kf16=\EO1;2S, kf2=\EOQ, kf25=\EO1;5P, kf26=\EO1;5Q,
-       kf27=\EO1;5R, kf28=\EO1;5S, kf3=\EOR, kf37=\EO1;6P,
-       kf38=\EO1;6Q, kf39=\EO1;6R, kf4=\EOS, kf40=\EO1;6S,
+       kf13=\EO1;2P, kf14=\EO1;2Q, kf15=\EO1;2R, kf16=\EO1;2S,
+       kf25=\EO1;5P, kf26=\EO1;5Q, kf27=\EO1;5R, kf28=\EO1;5S,
+       kf37=\EO1;6P, kf38=\EO1;6Q, kf39=\EO1;6R, kf40=\EO1;6S,
        kf49=\EO1;3P, kf50=\EO1;3Q, kf51=\EO1;3R, kf52=\EO1;3S,
        kf61=\EO1;4P, kf62=\EO1;4Q, kf63=\EO1;4R,
        use=xterm+pcfkeys,
@@ -6401,7 +6386,7 @@ hterm-256color|Chromium hterm with xterm 256-colors,
 # trimmed to eliminate those.  Also, since it is a slightly older version of
 # VTE, it lacks a few more features (again, trimmed).
 termite|VTE-based terminal,
-       am, ccc, km, mir, msgr, npc, xenl,
+       am, km, mir, msgr, npc, xenl,
        cols#80, it#8, lines#24, ncv@,
        acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
             yzz{{||}}~~,
@@ -6409,7 +6394,7 @@ termite|VTE-based terminal,
        csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
        cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
        cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-       dch=\E[%p1%dP, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
+       ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
        flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG,
        ht=^I, hts=\EH, ind=\n, invis=\E[8m,
        is2=\E[!p\E[?3;4l\E[4l\E>, kb2=\EOE, kbs=^?, kcbt=\E[Z,
@@ -6499,10 +6484,10 @@ konsole-base|KDE console window (common),
        ncv@,
        blink=\E[5m, dim=\E[2m, ech=\E[%p1%dX,
        flash=\E[?5h$<100/>\E[?5l, hpa=\E[%i%p1%dG,
-       invis=\E[8m, kbs=^?, kdch1=\E[3~, kend=\E[4~, kf1@, kf10@,
-       kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, kf17@, kf18@, kf19@, kf2@,
-       kf20@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, kfnd@, khome=\E[1~,
-       kslt@, rmam=\E[?7l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
+       invis=\E[8m, kend=\E[4~, kf1@, kf10@, kf11@, kf12@, kf13@, kf14@,
+       kf15@, kf16@, kf17@, kf18@, kf19@, kf2@, kf20@, kf3@, kf4@, kf5@, kf6@,
+       kf7@, kf8@, kf9@, kfnd@, khome=\E[1~, kslt@, rmam=\E[?7l,
+       rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
        rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
            %p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
@@ -6596,11 +6581,11 @@ konsole+pcfkeys|konsole subset of xterm+pcfkeys,
 # it is still useful for deriving the other entries, since the developer
 # provided function-keys based on xterm.
 konsole-vt100|KDE console window with VT100 (sic) keyboard,
-       kbs=^?, kdch1=\E[3~, kend=\E[F, kf1=\E[11~, kf10=\E[21~,
-       kf11=\E[23~, kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@,
-       kf18@, kf19@, kf2=\E[12~, kf20@, kf3=\E[13~, kf4=\E[14~,
-       kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-       khome=\E[H, use=konsole-base,
+       kend=\E[F, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
+       kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@, kf18@, kf19@,
+       kf2=\E[12~, kf20@, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~,
+       kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H,
+       use=konsole-base,
 
 # Obsolete: vt420pc.keytab was added in June 2000, dropped from the install in
 # September 2008 and removed in June 2016.  The developer who removed it stated
@@ -6981,7 +6966,6 @@ rxvt-16color|rxvt with 16 colors like aixterm,
 #      (not in rxvt, but not documented by mrxvt) but not CSI 19 t.
 # +    none of the "dynamic colors" (OSC colors) scripts work.
 mrxvt|multitabbed rxvt,
-       XT,
        kEND=\E[8;2~, kHOM=\E[7;2~, kcub1=\E[D, kcud1=\E[B,
        kcuf1=\E[C, kcuu1=\E[A, kend=\E[8~, khome=\E[7~,
        kEND3=\E[8;3~, kEND4=\E[8;4~, kEND5=\E[8;5~,
@@ -7050,8 +7034,7 @@ aterm|AfterStep terminal,
 # vttest shows several problems with keyboard, cursor-movements.
 # see also https://invisible-island.net/xterm/xterm.faq.html#bug_xiterm
 xiterm|internationalized terminal emulator for X,
-       km@,
-       kbs=^?, kdch1=\E[3~, use=klone+color, use=xterm-r6,
+       km@, use=klone+color, use=xterm-r6,
 
 
 #### HPTERM
@@ -7223,9 +7206,8 @@ mvterm|vv100|SwitchTerm aka mvTERM,
        el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, ht=^I,
        hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
        ind=\n, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-       kcuu1=\EOA, kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu,
-       kf7=\EOv, kf8=\EOl, kf9=\EOw, op=\E[100m, rc=\E8, rev=\E[7m,
-       ri=\EM, rmacs=^O, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
+       kcuu1=\EOA, op=\E[100m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
+       rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
        rs2=\E>\E[1;3;4;5;6l\E[?7h\E[100m\E[m\E[r\E[2J\E[H,
        sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5
@@ -7375,14 +7357,12 @@ st|stterm|aka simpleterm,
 # This entry discards the ccc/initc capabilities from st-0.7 because they
 # belong in st-256color.
 st-0.8|simpleterm 0.8,
-       dim=\E[2m, kcbt@, kent@, oc=\E]104\007,
-       sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
-           %t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m,
-       Ms=\E]52;%p1%s;%p2%s\007, kDN3=\E[1;3B, kDN5=\E[1;5B,
-       kLFT3=\E[1;3D, kLFT5=\E[1;5D, kNXT3=\E[6;3~,
-       kNXT5=\E[6;5~, kPRV3=\E[5;3~, kPRV5=\E[5;5~,
-       kRIT3=\E[1;3C, kRIT5=\E[1;5C, kUP3=\E[1;3A, kUP5=\E[1;5A,
-       use=ecma+strikeout, use=st-0.6,
+       kcbt@, kent@, oc=\E]104\007, Ms=\E]52;%p1%s;%p2%s\007,
+       kDN3=\E[1;3B, kDN5=\E[1;5B, kLFT3=\E[1;3D, kLFT5=\E[1;5D,
+       kNXT3=\E[6;3~, kNXT5=\E[6;5~, kPRV3=\E[5;3~,
+       kPRV5=\E[5;5~, kRIT3=\E[1;3C, kRIT5=\E[1;5C,
+       kUP3=\E[1;3A, kUP5=\E[1;5A, use=ecma+strikeout,
+       use=st-0.6,
 
 # Reviewed 0.7:
 #      dim is intermittent, sometimes works, sometimes does not
@@ -7395,17 +7375,14 @@ st-0.8|simpleterm 0.8,
 #      as booleans rather than strings.
 st-0.7|simpleterm 0.7,
        ccc,
-       dim=\E[2m,
        initc=\E]4;%p1%d;rgb:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
              %{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
-       kcbt@, kent@, oc=\E]104\007,
-       sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
-           %t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m,
-       Ms=\E]52;%p1%s;%p2%s\007, kDN3=\E[1;3B, kDN5=\E[1;5B,
-       kLFT3=\E[1;3D, kLFT5=\E[1;5D, kNXT3=\E[6;3~,
-       kNXT5=\E[6;5~, kPRV3=\E[5;3~, kPRV5=\E[5;5~,
-       kRIT3=\E[1;3C, kRIT5=\E[1;5C, kUP3=\E[1;3A, kUP5=\E[1;5A,
-       use=ecma+strikeout, use=st-0.6,
+       kcbt@, kent@, oc=\E]104\007, Ms=\E]52;%p1%s;%p2%s\007,
+       kDN3=\E[1;3B, kDN5=\E[1;5B, kLFT3=\E[1;3D, kLFT5=\E[1;5D,
+       kNXT3=\E[6;3~, kNXT5=\E[6;5~, kPRV3=\E[5;3~,
+       kPRV5=\E[5;5~, kRIT3=\E[1;3C, kRIT5=\E[1;5C,
+       kUP3=\E[1;3A, kUP5=\E[1;5A, use=ecma+strikeout,
+       use=st-0.6,
 
 # st-0.4.1
 #
@@ -7436,7 +7413,7 @@ st-0.7|simpleterm 0.7,
 # still has no function keys past kf36 (no combinations of modifiers)
 # no application keypad mode, e.g, kent.
 st-0.6|simpleterm 0.6,
-       am, bce, hs, mir, msgr, npc, xenl, XT,
+       am, bce, mir, msgr, npc, xenl, XT,
        colors#8, cols#80, it#8, lines#24, pairs#64,
        acsc=+C\,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyy
             zz{{||}}~~,
@@ -7446,7 +7423,7 @@ st-0.6|simpleterm 0.6,
        cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
        dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM,
        dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
-       enacs=\E)0, flash=\E[?5h$<100/>\E[?5l, fsl=^G, home=\E[H,
+       enacs=\E)0, flash=\E[?5h$<100/>\E[?5l, home=\E[H,
        hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
        il=\E[%p1%dL, il1=\E[L, ind=\n, invis=\E[8m,
        is2=\E[4l\E>\E[?1034l, kDC=\E[3;2~, kEND=\E[1;2F,
@@ -7472,10 +7449,10 @@ st-0.6|simpleterm 0.6,
        kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~,
        kf58=\E[21;3~, kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~,
        kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~,
-       kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kil1=\E[2;5~,
-       kind=\E[1;2B, kmous=\E[M, kri=\E[1;2A, krmir=\E[2;2~,
-       mc0=\E[i, mc4=\E[4i, mc5=\E[5i, op=\E[39;49m, rc=\E8,
-       rev=\E[7m, ri=\EM, rmacs=\E(B, rmir=\E[4l, rmkx=\E[?1l\E>,
+       kf8=\E[19~, kf9=\E[20~, kil1=\E[2;5~, kind=\E[1;2B,
+       kmous=\E[M, kri=\E[1;2A, krmir=\E[2;2~, mc0=\E[i,
+       mc4=\E[4i, mc5=\E[5i, op=\E[39;49m, rc=\E8, rev=\E[7m,
+       ri=\EM, rmacs=\E(B, rmir=\E[4l, rmkx=\E[?1l\E>,
        rmso=\E[27m, rmul=\E[24m, rs1=\Ec, rs2=\E[4l\E>\E[?1034l,
        sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
        setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}
@@ -7638,9 +7615,9 @@ terminator|Terminator no line wrap,
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p5%t;2%;%?%p1%p3%|%t;7
            %;m%?%p9%t\E(0%e\E(B%;,
        sgr0=\E[m\E(B, smacs=\E(0, smir=\E[4h, smso=\E[7m,
-       smul=\E[4m, tbc=\E[3g, tsl=\E]2;, vpa=\E[%i%p1%dd,
-       use=ansi+enq, use=vt220+pcedit, use=ecma+italics,
-       use=ecma+index, use=xterm+256setaf, use=xterm+sl-twm,
+       smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=ansi+enq,
+       use=vt220+pcedit, use=ecma+italics, use=ecma+index,
+       use=xterm+256setaf, use=xterm+sl-twm,
        use=xterm+alt1049, use=vt220+cvis, use=bracketed+paste,
 
 #### TERMINOLOGY
@@ -7696,9 +7673,7 @@ terminator|Terminator no line wrap,
 terminology-0.6.1|EFL-based terminal emulator (0.6.1),
        mc5i@,
        blink@, ed@, el@, el1@, invis=\E[8m, kLFT=\E[1;2D,
-       kRIT=\E[1;2C, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
-       kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-       kind=\E[1;2B, kri=\E[1;2A,
+       kRIT=\E[1;2C, kind=\E[1;2B, kri=\E[1;2A,
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p7%t;8
            %;m%?%p9%t\016%e\017%;$<2>,
        vpa=\E[%i%p1%dd, kDC3=\E[3;3~, kDC4=\E[3;4~,
@@ -7824,7 +7799,7 @@ alacritty-direct|alacritty with direct color indexing,
 # added xterm+sl-twm in 0.3.3 -TD
 alacritty+common|base fragment for alacritty,
        km@, npc,
-       kb2=\EOE, kbs=^?, kcbt=\E[Z, kent=\EOM, Se=\E[0 q,
+       kb2=\EOE, kcbt=\E[Z, kent=\EOM, Se=\E[0 q,
        Smulx=\E[4:%p1%dm, use=ecma+index, use=xterm+focus,
        use=xterm+sm+1006, use=xterm-basic, use=xterm+app,
        use=ansi+rep, use=xterm+tmux, use=ecma+strikeout,
@@ -7961,21 +7936,9 @@ kitty+common|KovId's TTY common properties,
        flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG,
        ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
        ind=\n, kBEG=\E[1;2E, kbeg=\EOE, kbs=^?, kcbt=\E[Z,
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-       kdch1=\E[3~, kend=\EOF, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,
-       kf12=\E[24~, kf13=\E[1;2P, kf14=\E[1;2Q, kf15=\E[1;2R,
-       kf16=\E[1;2S, kf17=\E[15;2~, kf18=\E[17;2~,
-       kf19=\E[18;2~, kf2=\EOQ, kf20=\E[19;2~, kf21=\E[20;2~,
-       kf22=\E[21;2~, kf23=\E[23;2~, kf24=\E[24;2~,
-       kf25=\E[1;5P, kf26=\E[1;5Q, kf27=\E[1;5R, kf28=\E[1;5S,
-       kf29=\E[15;5~, kf3=\EOR, kf30=\E[17;5~, kf31=\E[18;5~,
-       kf32=\E[19;5~, kf33=\E[20;5~, kf34=\E[21;5~,
-       kf35=\E[23;5~, kf36=\E[24;5~, kf4=\EOS, kf5=\E[15~,
-       kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\EOH,
-       kich1=\E[2~, kind=\E[1;2B, knp=\E[6~, kpp=\E[5~,
-       kri=\E[1;2A, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
-       rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l,
-       rmso=\E[27m, rmul=\E[24m, rs1=\E]\E\\\Ec, sc=\E7,
+       op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B,
+       rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l, rmso=\E[27m,
+       rmul=\E[24m, rs1=\E]\E\\\Ec, sc=\E7,
        sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;
            %?%p1%p3%|%t;7%;m,
        sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
@@ -8027,7 +7990,7 @@ foot-direct|foot with direct color indexing,
        use=xterm+direct, use=foot+base,
 
 foot+base|foot base fragment,
-       am, bce, bw, hs, mir, msgr, npc, xenl, AX, XT,
+       am, bce, bw, mir, msgr, npc, xenl, AX, XT,
        cols#80, it#8, lines#24,
        acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
@@ -8152,11 +8115,10 @@ eterm|GNU Emacs term.el terminal emulation,
 eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96,
        msgr,
        colors#8, pairs#64,
-       blink=\E[5m, il=\E[%p1%dL, il1=\E[L, ind=\n, invis=\E[8m,
-       kbs=^?, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-       op=\E[39;49m, rc=\E8, ri=\EM, rmso=\E[27m, rmul=\E[24m,
-       rs1=\Ec, sc=\E7, setab=\E[%p1%'('%+%dm,
-       setaf=\E[%p1%{30}%+%dm,
+       blink=\E[5m, invis=\E[8m, kbs=^?, kcub1=\EOD, kcud1=\EOB,
+       kcuf1=\EOC, kcuu1=\EOA, op=\E[39;49m, rc=\E8, ri=\EM,
+       rmso=\E[27m, rmul=\E[24m, rs1=\Ec, sc=\E7,
+       setab=\E[%p1%'('%+%dm, setaf=\E[%p1%{30}%+%dm,
        sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?
            %p7%t;8%;m,
        sgr0=\E[m, use=vt220+pcedit, use=eterm,
@@ -8255,7 +8217,7 @@ dumb-emacs-ansi|Emacs dumb terminal with ANSI color codes,
 # terminfo entries (which list about 60% of the control sequences).
 screen-base|VT 100/ANSI X3.64 virtual terminal (base),
        OTbs, OTpt, am, km, mir, msgr, xenl, G0,
-       colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1,
+       cols#80, it#8, lines#24, ncv@, U8#1,
        acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
             yzz{{||}}~~,
        bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
@@ -8325,7 +8287,7 @@ screen-256color-s|GNU Screen with 256 colors and status line,
        use=xterm+256setaf, use=screen-s,
 
 screen-256color-bce|GNU Screen with 256 colors and BCE,
-       bce, use=xterm+256setaf, use=screen-bce,
+       use=xterm+256setaf, use=screen-bce,
 
 screen-256color-bce-s|GNU Screen with 256 colors using BCE and status line,
        bce, use=xterm+256setaf, use=screen-s,
@@ -8387,9 +8349,8 @@ screen+italics|screen cannot support italics,
 #      since the default translations override the built-in keycode
 #      translation.  They are suppressed here to show what is tested by tack.
 screen.xterm-xfree86|screen.xterm-new|screen customized for modern xterm,
-       bce@, bw, npc,
-       invis@, kIC@, kNXT@, kPRV@, kcbt=\E[Z, kent=\EOM, meml@, memu@,
-       nel=\EE, rep@,
+       bce@, bw,
+       invis@, kIC@, kNXT@, kPRV@, meml@, memu@, rep@,
        sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
            %t;7%;%?%p4%t;5%;%?%p5%t;2%;m,
        E3@, use=screen+italics, use=screen+fkeys,
@@ -8436,7 +8397,7 @@ screen.konsole|screen in KDE console window,
 # fix the backspace key
 screen.linux|screen.linux-s|screen in Linux console,
        bw,
-       kbs=^?, kcbt@, use=linux+sfkeys, use=xterm+x11mouse,
+       kcbt@, use=linux+sfkeys, use=xterm+x11mouse,
        use=screen+fkeys, use=screen,
 screen.mlterm|screen in mlterm,
        XR@, use=xterm+x11mouse, use=screen+fkeys,
@@ -8471,10 +8432,8 @@ screen-bce.mrxvt|screen optimized for mrxvt,
        bce,
        ech@, use=screen.mrxvt,
 screen-bce.gnome|screen optimized for GNOME-Terminal,
-       bce,
        ech@, use=screen+italics, use=screen.gnome,
 screen-bce.konsole|screen optimized for KDE console window,
-       bce,
        ech@, use=screen+italics, use=screen.konsole,
 screen-bce.linux|screen optimized for Linux console,
        bce,
@@ -8549,7 +8508,7 @@ screen5|VT 100/ANSI X3.64 virtual terminal (someday),
 # various entries such as screen.xterm-new provide a way to more closely
 # match the terminal.
 tmux|tmux terminal multiplexer,
-       invis=\E[8m, kbs=^?, rmso=\E[27m,
+       invis=\E[8m, rmso=\E[27m,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
            %p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
        smso=\E[7m, E3=\E[3J, Smulx=\E[4:%p1%dm,
@@ -8948,14 +8907,14 @@ sun-type4|Sun Workstation console with type 4 keyboard,
 sun-color|Sun Microsystems Workstation console with color support (IA systems),
        colors#8, ncv#3, pairs#64,
        bold=\E[1m, cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC,
-       cuu=\E[%p1%dA, home=\E[H, op=\E[0m, rs2=\E[s,
-       setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+       cuu=\E[%p1%dA, home=\E[H, op=\E[0m, setab=\E[4%p1%dm,
+       setaf=\E[3%p1%dm,
        setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}
             %=%t3%e%p1%d%;m,
        setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}
             %=%t3%e%p1%d%;m,
        sgr=\E[0%?%p6%t;1%;%?%p1%p3%|%t;7%;m, sgr0=\E[m,
-       smso=\E[7m, use=sun,
+       use=sun,
 
 #### Iris consoles
 #
@@ -9232,33 +9191,25 @@ emx-base|DOS special keys,
 #
 # Removed: rmacs=\E[10m, smacs=\E[11m, because OS/2 does not implement acs.
 ansi-emx|ANSI.SYS color,
-       am, bce, eo, mir, msgr, xon,
-       colors#8, cols#80, it#8, lines#25, pairs#64,
-       bel=^G, blink=\E[5m, bold=\E[1m,
-       clear=\E[1;33;44m\E[H\E[J, cr=\r, cub1=^H, cud1=\n,
-       cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-       dch=\E[%p1%dp, ed=\E[J, el=\E[K,
-       flash=\E[?5h$<100/>\E[?5l, home=\E[H, ht=^I, hts=\EH,
-       ich=\E[%p1%d@, ich1=\E[@, ind=\n, kb2=\E[G, kbs=^H, kf0=\0D,
-       kll=\0O, kspd=^Z, nel=\r\n, rev=\E[5;37;41m, rmir=\E[4l,
-       rmpch=\E[10m, rmso=\E[0;44m\E[1;33m,
-       rmul=\E[0;44m\E[1;33m, rs1=\Ec, setab=\E[4%p1%dm,
-       setaf=\E[3%p1%dm, sgr0=\E[0m\E[1;33;44m, smir=\E[4h,
-       smpch=\E[11m, smso=\E[0;31;47m, smul=\E[1;31;44m,
-       tbc=\E[3g, u8=\E[?6c, u9=\E[c, use=vt220+cvis,
-       use=emx-base,
+       eo,
+       clear=\E[1;33;44m\E[H\E[J, cr=\r, cud1=\n, dch=\E[%p1%dp,
+       ed=\E[J, flash=\E[?5h$<100/>\E[?5l, ht=^I, hts=\EH,
+       ich=\E[%p1%d@, ich1=\E[@, ind=\n, kb2=\E[G, kf0=\0D, kll=\0O,
+       kspd=^Z, nel=\r\n, rev=\E[5;37;41m, rmir=\E[4l,
+       rmso=\E[0;44m\E[1;33m, rmul=\E[0;44m\E[1;33m, rs1=\Ec,
+       sgr0=\E[0m\E[1;33;44m, smir=\E[4h, smso=\E[0;31;47m,
+       smul=\E[1;31;44m, tbc=\E[3g, u8=\E[?6c, u9=\E[c,
+       use=vt220+cvis, use=emx-base,
 # nice colors for Emacs (white on blue, mode line white on cyan)
 ansi-color-2-emx|ANSI.SYS color 2,
        clear=\E[0;37;44m\E[H\E[J, rev=\E[1;37;46m,
-       rmso=\E[0;37;44m, rmul=\E[0;37;44m, rs1=\Ec,
-       setaf=\E[3%p1%dm, sgr0=\E[0;37;44m, smso=\E[1;37;46m,
-       smul=\E[1;36;44m, use=ansi-emx,
+       rmso=\E[0;37;44m, rmul=\E[0;37;44m, sgr0=\E[0;37;44m,
+       smso=\E[1;37;46m, smul=\E[1;36;44m, use=ansi-emx,
 # nice colors for Emacs (white on black, mode line black on cyan)
 ansi-color-3-emx|ANSI.SYS color 3,
        clear=\E[0;37;40m\E[H\E[J, rev=\E[1;37;46m,
-       rmso=\E[0;37;40m, rmul=\E[0;37;40m, rs1=\Ec,
-       setaf=\E[3%p1%dm, sgr0=\E[0;10m, smso=\E[1;37;46m,
-       smul=\E[0;36;40m, use=ansi-emx,
+       rmso=\E[0;37;40m, rmul=\E[0;37;40m, sgr0=\E[0;10m,
+       smso=\E[1;37;46m, smul=\E[0;36;40m, use=ansi-emx,
 mono-emx|stupid monochrome ANSI terminal with only one kind of emphasis,
        am,
        cols#80, it#8, lines#24,
@@ -9930,8 +9881,7 @@ hp2621-fl|HP 2621,
        xhp@, xon,
        pb#19200,
        cbt=\Ei, cup=\E&a%p2%dc%p1%dY, dch1=\EP$<2>, ht=\011$<2>,
-       ip=$<2>, is2=\E&j@\r, rmkx=\E&j@, rmso=\E&d@, rmul=\E&d@,
-       sgr0=\E&d@, smkx=\E&jB, smso=\E&dD, smul=\E&dD,
+       ip=$<2>, is2=\E&j@\r, rmkx=\E&j@, smkx=\E&jB, smso=\E&dD,
        use=hp+pfk+cr, use=hpgeneric,
 
 # To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p
@@ -10058,21 +10008,20 @@ hp2626-12-s|Hewlett-Packard 2626 11 lines plus status,
 # hp2627 color tubes from University of Wisconsin
 #
 hp2627a-rev|HP 2627 with reverse video colors,
-       cr=\r, cud1=\n, ht=^I, ind=\n,
+       ht=^I,
        is2=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3
            \r,
-       kbs=^H, kcub1=^H, kcud1=\n, nel=\r\n, rmul=\E&v0S\E&d@,
+       kcub1=^H, kcud1=\n, nel=\r\n, rmul=\E&v0S\E&d@,
        smul=\E&dD\E&v1S, use=hp2621-nl,
 hp2627a|HP 2627 color terminal with no labels,
-       cr=\r, cud1=\n, ht=^I, ind=\n,
+       ht=^I,
        is2=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\r,
-       kbs=^H, kcub1=^H, kcud1=\n, nel=\r\n, rmso=\E&v0S,
+       kcub1=^H, kcud1=\n, nel=\r\n, rmso=\E&v0S,
        rmul=\E&v0S\E&d@, smso=\E&v2S, smul=\E&dD\E&v1S,
        use=hp2621-nl,
 hp2627c|HP 2627 color (cyan) terminal with no labels,
-       cr=\r, cud1=\n, ht=^I, ind=\n,
        is2=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\r,
-       kbs=^H, kcub1=^H, kcud1=\n, nel=\r\n, use=hp2627a,
+       use=hp2627a,
 
 # hp2640a doesn't have the Y cursor addressing feature, and C is
 # memory relative instead of screen relative, as we need.
@@ -10108,7 +10057,7 @@ hp2645|hp45|HP 2645 series,
        rmkx=\E&s0A,
        sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|
            %;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c,
-       sgr0=\E&d@, smkx=\E&s1A, smul=\E&dD, use=hpgeneric,
+       sgr0=\E&d@, smkx=\E&s1A, use=hpgeneric,
 # You should use this terminal at 4800 baud or less.
 hp2648|hp2648a|HP 2648a graphics terminal,
        clear=\EH\EJ$<50>, cup=\E&a%p2%dc%p1%dY$<20>,
@@ -10328,9 +10277,9 @@ hpsub|HP terminals -- capability subset,
 # (hpex: removed memory-lock capabilities ":ml=\El:mu=\Em:",
 # moved <rmir> here from hpsub -- esr)
 hpex|HP extended capabilities,
-       cr=\r, cud1=\n, cup=\E&a%p1%dy%p2%dC, ht=^I, ind=\n, kbs=^H,
-       kcub1=^H, kcud1=\n, nel=\r\n, rmir=\ER, rmul=\E&d@, smir=\EQ,
-       smul=\E&dD, vpa=\E&a%p1%dY, use=hpsub,
+       cud1=\n, cup=\E&a%p1%dy%p2%dC, kcub1=^H, kcud1=\n,
+       nel=\r\n, rmir=\ER, rmul=\E&d@, smir=\EQ, smul=\E&dD,
+       vpa=\E&a%p1%dY, use=hpsub,
 
 # From: Ville Sulko <Ville.Sulko@bip.atk.tpo.fi>, 05 Aug 1996
 hp2|hpex2|Hewlett-Packard extended capabilities newer version,
@@ -10588,8 +10537,7 @@ adm3a+|adm3a plus,
 # (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr)
 adm5|LSI adm5,
        xmc#1,
-       bel=^G, cr=\r, cud1=\n, ed=\EY, el=\ET, kbs=^H, khome=^^,
-       rmso=\EG, smso=\EG, use=adm3a+,
+       ed=\EY, el=\ET, khome=^^, rmso=\EG, smso=\EG, use=adm3a+,
 # A lot of terminals other than adm11s use these.  Wherever you see
 # use=adm+sgr with some of its capabilities disabled, try the
 # disabled ones.  They may well work but not have been documented or
@@ -10683,10 +10631,9 @@ adm20|Lear Siegler adm20,
        sgr0=\E(, smso=\E),
 adm21|Lear Siegler adm21,
        xmc#1,
-       bel=^G, cr=\r, cud1=\n, dch1=\EW, dl1=\ER$<30*>, ed=\EY,
-       el=\ET, ich1=\EQ, il1=\EE$<30*>, ind=\n, invis@, kbs=^H,
-       kcub1=^H, kcud1=\n, kcuf1=^L, kcuu1=^K, khome=^^,
-       use=adm+sgr, use=adm3a,
+       dch1=\EW, dl1=\ER$<30*>, ed=\EY, el=\ET, ich1=\EQ,
+       il1=\EE$<30*>, invis@, kbs=^H, khome=^^, use=adm+sgr,
+       use=adm3a,
 # (adm22: ":em=:" was an obvious typo for ":ei=:"; also,
 # removed obsolete ":kn#7:ma=j^Jk^P^K^Pl ^R^L^L :";
 # removed bogus-looking \200 from before <cup>. -- esr)
@@ -11825,7 +11772,7 @@ tvi925|TeleVideo 925,
 # to avoid "magic cookie" standout glitch:
 tvi925-hi|TeleVideo Model 925 with half intensity standout mode,
        xmc@,
-       kbs=^H, kcub1=^H, kcud1=\n, rmso=\E(, smso=\E), use=tvi925,
+       kcud1=\n, rmso=\E(, smso=\E), use=tvi925,
 
 # From: Todd Litwin <litwin@litwin.jpl.nasa.gov> 28 May 1993
 # Originally Tim Curry, Univ. of Central Fla., <duke!ucf-cs!tim> 5/21/82
@@ -12023,8 +11970,8 @@ tvi950-rv-4p|TeleVideo 950 rev video w/4 pages,
 # If the BSD termcap file was right, <cup=\E=%p1%{32}%+%c%p2%{32}%+%c> would
 # also work.
 tvi955|TeleVideo 955,
-       OTbs, mc5i, msgr@,
-       it#8, xmc@,
+       mc5i, msgr@,
+       xmc@,
        acsc=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ, blink=\EG2,
        civis=\E.0, cnorm=\E.2, cud1=^V, cup=\E[%i%p1%d;%p2%dH,
        cvvis=\E.1, dim=\E[=5h, ind@, invis=\EG1,
@@ -12033,8 +11980,7 @@ tvi955|TeleVideo 955,
        rmam=\E[=7l, rmxon=^N,
        rs1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee\s\017\E0P\E6\0\E0p\E4\0
            \Ef\r,
-       sgr0=\EG0\E[=5l, smacs=\E$, smam=\E[=7h, smxon=^O,
-       use=tvi950,
+       sgr0=\EG0\E[=5l, smam=\E[=7h, smxon=^O, use=tvi950,
 tvi955-w|955-w|TeleVideo 955 w/132 cols,
        cols#132,
        is2=\E[=3h\EF1\Ed\EG0\E[=5l\E%\El, use=tvi955,
@@ -12215,12 +12161,9 @@ vi200|Visual 200,
 # If your version of vi doesn't support function keys you may want
 # to use vi200-f.
 vi200-f|Visual 200 no function keys,
-       is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, kf0=\E?p, kf1=\E?q,
-       kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, kf7=\E?w,
-       kf8=\E?x, kf9=\E?y, rmkx=\E>, rmso@, smkx=\E=, smso@,
-       use=vi200,
+       is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, rmso@, smso@, use=vi200,
 vi200-rv|Visual 200 reverse video,
-       cnorm@, cvvis@, ri@, rmso=\E3, smso=\E4, use=vi200,
+       cnorm@, cvvis@, ri@, use=vi200,
 
 # the function keys are programmable but we don't reprogram them to their
 # default values with <is2> because programming them is very verbose. maybe
@@ -12278,7 +12221,7 @@ vi550|Visual 550 ANSI x3.64,
 
 vi603|visual603|Visual 603,
        hs, mir,
-       bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J,
+       blink=\E[5m, bold=\E[1m, clear=\E[H\E[J,
        csr=\E[%i%p1%d;%p2%dr, cuf1=\E[C,
        cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
        dsl=\EP2;1~\E\\, ed=\E[J, el=\E[K, fsl=\E\\, il1=\E[L,
@@ -12655,9 +12598,9 @@ wy60-42|wyse60-42|Wyse 60 80-column 42-lines,
        ri=\Ej$<10>, rs3=\Ee*$<150>, use=wy60,
 wy60-42-w|wyse60-42-w|Wyse 60 132-column 42-lines,
        cols#132, lw#7, nlab#16, wsl#97,
-       clear=\E+$<260>, cup=\Ea%i%p1%dR%p2%dC$<2>,
-       dch1=\EW$<19>, ed=\Ey$<260>, home=\036$<2>, ip=$<6>,
-       nel=\r\n$<11>, rs2=\EeF$<150>\E`;$<150>, use=wy60-42,
+       cup=\Ea%i%p1%dR%p2%dC$<2>, dch1=\EW$<19>,
+       home=\036$<2>, ip=$<6>, nel=\r\n$<11>,
+       rs2=\EeF$<150>\E`;$<150>, use=wy60-42,
 #
 wy60-43|wyse60-43|Wyse 60 80-column 43-lines,
        lh@, lines#43, lw@, nlab@,
@@ -12689,8 +12632,7 @@ wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell,
 wy99gt|wyse99gt|Wyse 99gt,
        msgr@,
        clear=\E+$<130>, dch1=\EW$<7>, dl1=\ER$<4>, ed=\Ey$<130>,
-       el=\Et$<5>, flash=\E`8$<100/>\E`9, ht=\011$<1>,
-       il1=\EE$<4>, ind=\n$<4>, ip=$<2>, is3=\Ew0$<20>, nel@,
+       el=\Et$<5>, ind=\n$<4>, ip=$<2>, is3=\Ew0$<20>, nel@,
        ri=\Ej$<3>, rmcup=\Ew0, rs2=\E`:$<150>, smcup=\Ew1,
        u0=\E~>\E8, u1=\E[42h, use=wy60,
 #
@@ -12702,7 +12644,7 @@ wy99gt-w|wyse99gt-w|Wyse 99gt 132-column,
 #
 wy99gt-25|wyse99gt-25|Wyse 99gt 80-column 25-lines,
        lh@, lines#25, lw@, nlab@,
-       pln@, rs2=\E`:$<150>, rs3=\EwG\Ee)$<200>, use=wy99gt,
+       pln@, rs3=\EwG\Ee)$<200>, use=wy99gt,
 #
 wy99gt-25-w|wyse99gt-25-w|Wyse 99gt 132-column 25-lines,
        lh@, lines#25, lw@, nlab@,
@@ -13109,17 +13051,16 @@ wy185|wyse185|Wyse 185,
        ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W,
        is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h,
        is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-       kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf10=\E[21~,
+       kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf10=\E[21~,
        kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~,
        kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
-       kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS,
-       kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-       khlp=\E[28~, khome=\E[26~, lf1=PF1, lf2=PF2, lf3=PF3,
-       lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m,
-       ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l,
-       rmkx=\E>, rmso=\E[27m, rmul=\E[24m,
-       rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l,
-       rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7,
+       kf19=\E[33~, kf20=\E[34~, kf6=\E[17~, kf7=\E[18~,
+       kf8=\E[19~, kf9=\E[20~, khlp=\E[28~, khome=\E[26~, lf1=PF1,
+       lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
+       rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, rmam=\E[?7l,
+       rmcup=\E[ R, rmir=\E[4l, rmkx=\E>, rmso=\E[27m,
+       rmul=\E[24m, rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p,
+       rs2=\E[35h\E[?3l, rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7,
        sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?
            %p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
        sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q,
@@ -13650,9 +13591,8 @@ pckermit|pckermit12|UCB IBMPC Kermit 1.2,
 # Does not use :am: because autowrap is lost when kermit dropped and restarted.
 # From: greg small <gts@populi.berkeley.edu> 12-19-84
 pckermit120|UCB IBMPC Kermit 1.20,
-       it#8, lines#24,
-       cud1=\EB, cvvis=\EO\Eq\EEK3, dch1=\EN, dl1=\EM, ht=^I,
-       il1=\EL,
+       it#8,
+       cvvis=\EO\Eq\EEK3, dch1=\EN, dl1=\EM, ht=^I, il1=\EL,
        is2=\EO\Eq\EJ\EY7\sK3\sUCB\sIBMPC\sKermit\s1.20\s\s12-19-84
            \n,
        rmir@, rmso=\Eq, smir@, smso=\Ep, use=kermit,
@@ -13861,14 +13801,14 @@ rbcomm|IBM PC with RBcomm and EMACS keybindings,
        use=vt220+cvis,
 rbcomm-nam|IBM PC with RBcomm without autowrap,
        am@,
-       bel=^G, cr=\r, cud1=\n, ht=^I, ind=\n,
-       is2=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g, kbs=^H,
-       kcub1=^H, kcud1=\n, nel=\r\n, use=rbcomm,
+       cud1=\n, ind=\n,
+       is2=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g, kcub1=^H,
+       kcud1=\n, nel=\r\n, use=rbcomm,
 rbcomm-w|IBM PC with RBcomm in 132 column mode,
        cols#132,
-       bel=^G, cr=\r, cud1=\n, ht=^I, ind=\n,
-       is2=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g, kbs=^H,
-       kcub1=^H, kcud1=\n, nel=\r\n, use=rbcomm,
+       cud1=\n, ind=\n,
+       is2=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g, kcub1=^H,
+       kcud1=\n, nel=\r\n, use=rbcomm,
 
 ######## LCD DISPLAYS
 #
@@ -14060,8 +14000,8 @@ v5410|att5410 in terms of a VT100,
 # when pressed in SYS PF mode.
 # (att4415: I added <rmam>/<smam> based on the init string -- esr)
 att4415|tty5420|att5420|AT&T 4415/5420 80 cols,
-       OTbs, db, mir, xon,
-       lh#2, lm#78, lw#8, nlab#8, wsl#55,
+       db,
+       lm#78, wsl#55,
        cbt=\E[Z, clear=\E[x\E[J, cnorm=\E[11;0j, cub=\E[%p1%dD,
        cud=\E[%p1%dB, cuf=\E[%p1%dC, cup=\E[%i%p1%d;%p2%dx,
        cuu=\E[%p1%dA, cvvis=\E[11;1j, dch=\E[%p1%dP,
@@ -14593,14 +14533,10 @@ att605|AT&T 605 80 column 102key keyboard,
 att605-pc|AT&T 605 in pc term mode,
        acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x
             \263,
-       cbt=\E[Z, cub1=\E[D, cud1=\E[B, cuf1=\E[C, cuu1=\E[A,
-       dch1=\E[P, dl1=\E[M, ich1=\E[@, il1=\E[L, kcbt=\E[Z,
-       kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-       kdl1=\E[M, kend=\E[F, kf1=\E[M, kf10=\E[V, kf2=\E[N,
+       cub1=\E[D, kend=\E[F, kf1=\E[M, kf10=\E[V, kf2=\E[N,
        kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T,
-       kf9=\E[U, khome=\E[H, kich1=\E[@, knp=\E[G, kpp=\E[I,
-       rmsc=\E[50;0|$<400>, smsc=\E[?11l\E[50;1|$<250>,
-       xoffc=g, xonc=e, use=att605,
+       kf9=\E[U, knp=\E[G, kpp=\E[I, rmsc=\E[50;0|$<400>,
+       smsc=\E[?11l\E[50;1|$<250>, xoffc=g, xonc=e, use=att605,
 att605-w|AT&T 605-w 132 column 102 key keyboard,
        cols#132, wsl#132,
        is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0, use=att605,
@@ -15237,9 +15173,9 @@ ampex219|ampex-219|amp219|Ampex with automargins,
        rmso=\E[m$<2>, rmul=\E[m$<2>, sgr0=\E[m$<2>, smam=\E[?7h,
        smkx=\E=, smso=\E[7m$<2>, smul=\E[4m$<2>,
 ampex219w|ampex-219w|amp219w|Ampex 132 cols,
-       cols#132, lines#24,
-       bel=^G, cr=\r, cud1=\n, ind=\n,
-       is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, use=ampex219,
+       cols#132,
+       cud1=\n, is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h,
+       use=ampex219,
 # (ampex232: removed <if=/usr/share/tabset/ampex>, no file and no <hts> --esr)
 ampex232|ampex-232|Ampex Model 232,
        am,
@@ -15254,7 +15190,7 @@ ampex232|ampex-232|Ampex Model 232,
        kf9=^AI\r, khome=^^, use=adm+sgr,
 # (ampex: removed <if=/usr/share/tabset/amp-132>, no file and no <hts> -- esr)
 ampex232w|Ampex Model 232 / 132 columns,
-       cols#132, lines#24,
+       cols#132,
        is2=\E\034Eg\El, use=ampex232,
 
 #### Ann Arbor (aa)
@@ -16148,13 +16084,13 @@ c108|concept108|c108-8p|concept108-8p|Concept 108 w/8 pages,
            \Ep\n,
        rmcup=\Ev  \001\177p\Ep\r\n, use=c108-4p,
 c108-4p|concept108-4p|Concept 108 w/4 pages,
-       OTbs, eslok, hs, xon,
+       eslok, hs, xon,
        pb@,
        acsc=jEkTl\\mMqLxU, cnorm=\Ew, cr=\r,
        cup=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}
            %>%t\001%{96}%-%;%{32}%+%c,
        cvvis=\EW, dch1=\E 1$<16*>, dsl=\E ;\177, fsl=\Ee\E z\s,
-       ind=\n, is1=\EK\E!\E F,
+       is1=\EK\E!\E F,
        is3=\EU\E z"\Ev\177 !p\E ;"\E z \Ev  \001 p\Ep\n,
        rmacs=\Ej\s, rmcup=\Ev  \001 p\Ep\r\n, smacs=\Ej!,
        smcup=\EU\Ev  8p\Ep\r\E\025,
@@ -17448,7 +17384,7 @@ dm3025|Datamedia 3025a,
        is2=\EQ\EU\EV, rmdc=\EQ, rmir=\EQ, rmso=\EO0, smdc=\EP,
        smir=\EP, smso=\EO1,
 dm3045|Datamedia 3045a,
-       OTbs, am, eo, km@, ul, xenl,
+       am, eo, km@, ul, xenl,
        dch1=\EB$<6>, dl1@, il1@, is2=\EU\EV, kcuf1=\EC, kcuu1=\EA,
        kf0=\Ey\r, kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r,
        kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, kf9=\Ex\r,
@@ -17486,11 +17422,10 @@ dm3045|Datamedia 3045a,
 #      CRT Saver       0=Off  1=On
 # dm80/1 is a VT100 lookalike, but it doesn't seem to need any padding.
 dm80|dmdt80|dt80|Datamedia dt80/1,
-       clear=\E[2J\E[H, cud1=\n, cuf1=\E[C,
-       cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-       home=\E[H, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, ri=\EM,
-       rmso=\E[m, rmul=\E[m, sgr0=\E[m\017$<2>, smso=\E[7m,
-       smul=\E[4m, use=vt100+4bsd,
+       clear=\E[2J\E[H, cuf1=\E[C, cup=%i\E[%p1%d;%p2%dH,
+       cuu1=\E[A, ed=\E[J, el=\E[K, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
+       ri=\EM, rmso=\E[m, rmul=\E[m, sgr0=\E[m\017$<2>,
+       smso=\E[7m, smul=\E[4m, use=vt100+4bsd,
 # except in 132 column mode, where it needs a little padding.
 # This is still less padding than the VT100, and you can always turn on
 # the ^S/^Q handshaking, so you can use VT100 flavors for things like
@@ -18122,11 +18057,11 @@ ibm3101|i3101|IBM 3101-10,
        el=\EI, home=\EH, hts=\E0, ind=\n, kcub1=\ED, kcud1=\EB,
        kcuf1=\EC, kcuu1=\EA, nel=\r\n, tbc=\EH,
 ibm3151|IBM 3151 display,
-       is2=\E S, rmacs=\E>B, rmcup=\E>B, rs2=\E S, s0ds=\E>B,
+       is2=\E S, rmacs=\E>B, rs2=\E S,
        sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;
            %?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t
            %{80}%|%;%c%?%p9%t\E>A%e\E>B%;,
-       sgr0=\E4@\E>B, smacs=\E>A, smcup=\E>B, use=ibm3162,
+       sgr0=\E4@\E>B, smacs=\E>A, use=ibm3162,
 # From: Mark Easter <marke@fsi-ssd.csg.ssd.fsi.com> 29 Oct 1992
 # removed kend, knp, kpp -TD
 #
@@ -18234,8 +18169,7 @@ ibmmono|IBM workstation monochrome,
        sgr0=\Ew\Eq\Ez\EB, smso=\EZ, smul=\EW, tsl=\Ej\EY8%+ \Eo,
        use=ibm3101,
 ibmega|IBM Enhanced Color Display,
-       cr=\r, cud1=\n, ht=^I, ind=\n, kbs=^H, kcub1=^H, kcud1=\n,
-       nel=\r\n, use=ibmmono,
+       ht=^I, kcub1=^H, kcud1=\n, use=ibmmono,
 # This color scheme is assumed in some recent IBM terminal descriptions
 # (green on black, emulated on a 16-color terminal).
 ibm+color|IBM color definitions,
@@ -18263,11 +18197,9 @@ ibmega-c|ibm5154-c|IBM Enhanced Color Display with standout and underline,
        rmso=\EB, rmul=\EB, smso=\EF\Ef3;, smul=\EF\Ef2;,
        use=ibmmono,
 ibmvga-c|IBM VGA display color termcap,
-       cr=\r, cud1=\n, ht=^I, ind=\n, kbs=^H, kcub1=^H, kcud1=\n,
-       nel=\r\n, use=ibmega-c,
+       ht=^I, kcub1=^H, kcud1=\n, use=ibmega-c,
 ibmvga|IBM VGA display,
-       cr=\r, cud1=\n, ht=^I, ind=\n, kbs=^H, kcub1=^H, kcud1=\n,
-       nel=\r\n, use=ibmega,
+       use=ibmega,
 # ibmapa* and ibmmono entries come from ACIS 4.3 distribution
 rtpc|ibmapa16|IBM 6155 Extended Monochrome Graphics Display,
        lines#32,
@@ -18298,22 +18230,12 @@ ibm6153-90|IBM 6153 Black & White display (36-line),
 ibm6153-40|IBM 6153 Black & White display (12-line),
        cols#40, lines#12, use=ibm6153-90,
 ibm8512|ibm8513|IBM color VGA Terminal,
-       am, mir, msgr,
-       cols#80, it#8, lines#25,
-       acsc=jjkkllmmnnqqttuuvvwwxx, blink=\E[5m, bold=\E[1m,
-       clear=\E[H\E[J, cub1=\E[D, cud1=\n, cuf1=\E[C,
-       cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M,
-       ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, il=\E[%p1%dL,
-       il1=\E[L, is2=\Eb\E[m\017\E[?7h, kcud1=\E[B, kcuu1=\E[A,
-       kf0=\E[010q, kf1=\E[001q, kf2=\E[002q, kf3=\E[003q,
-       kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q,
-       kf8=\E[008q, kf9=\E[009q, khome=\E[H, rc=\E[u, rev=\E[7m,
+       mir,
+       cub1=\E[D, is2=\Eb\E[m\017\E[?7h, kf0=\E[010q, rc=\E[u,
        rmacs=^O, rmam=\E[?7l, rmcup=\E[20h, rmdc=\E[4l,
-       rmir=\E[4l, rmso=\E[m, rmul=\E[m,
        rs1=\Eb\E[m\017\E[?7h\E[H\E[J, sc=\E[s, sgr0=\E[m,
        smacs=^N, smam=\E[?7h, smcup=\E[20;4l\E[?7h\Eb,
-       smdc=\E[4h, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-       use=ibm8503,
+       smdc=\E[4h, use=ibm8503,
 hft-c|HFT with Color,
        colors#8, pairs#64,
        acsc=jjkkllmmnnqqttuuvvwwxx, s0ds=\E(B, s1ds=\E(0,
@@ -18383,21 +18305,17 @@ ibm5081|hft|IBM Megapel Color display,
        acsc=jjkkllmmnnqqttuuvvwwxx, blink@, bold@, s0ds=\E(B,
        s1ds=\E(0, sgr0=\E[0m\E(B, use=ibm5154,
 ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display,
-       eslok, hs,
        lines#33,
-       dsl=\Ej\EYA \EI\Ek, fsl=\Ek, tsl=\Ej\EYA%+ \Eo,
-       use=ibmega-c,
+       dsl=\Ej\EYA \EI\Ek, tsl=\Ej\EYA%+ \Eo, use=ibmega-c,
 ibm8503|ibm8507|ibm8604|IBM 8503 B & W VGA display,
        use=hft-c,
 ibm8514|IBM 8514/a color VGA display,
        eslok, hs,
        dsl=\Ej\EYI \EI\Ek, fsl=\Ek, tsl=\Ej\EYI%+ \Eo, use=hft,
 ibm8514-c|IBM 8514 color display with standout and underline,
-       eslok, hs,
        lines#41,
-       cr=\r, cud1=\n, dsl=\Ej\EYI \EI\Ek, fsl=\Ek, ht=^I, ind=\n,
-       kbs=^H, kcub1=^H, kcud1=\n, nel=\r\n, tsl=\Ej\EYI%+ \Eo,
-       use=ibmega-c,
+       dsl=\Ej\EYI \EI\Ek, ht=^I, kcub1=^H, kcud1=\n,
+       tsl=\Ej\EYI%+ \Eo, use=ibmega-c,
 
 #
 # AIX entries.  IBM ships these with AIX 3.2.5.
@@ -19247,8 +19165,7 @@ act4|microterm|microterm act iv,
 # The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)...
 # (microterm5: removed obsolete ":ma==^Z^P^Xl^Kj:" -- esr)
 act5|microterm5|microterm act v,
-       kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, ri=\EH$<3>, uc=^H\EA,
-       use=act4,
+       ri=\EH$<3>, uc=^H\EA, use=act4,
 # Mimes using brightness for standout.  Half bright is really dim unless
 # you turn up the brightness so far that lines show up on the screen.
 mime-fb|full bright mime1,
@@ -19290,7 +19207,7 @@ mime2a|mime2a-v|microterm mime2a (emulating an enhanced VT52),
 # (mime3a: removed obsolete ":ma=^X ^K^J^Z^P:" -- esr)
 mime3a|mime1 emulating 3a,
        am@,
-       kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, use=adm3a,
+       kcud1=^K, kcuf1=^X, kcuu1=^Z, use=adm3a,
 mime3ax|mime-3ax|mime1 emulating enhanced 3a,
        it#8,
        dl1=\027$<80>, ed=^_, el=^X, ht=\011$<3>, il1=\001$<80>,
@@ -19496,15 +19413,11 @@ ncr260vt100wan|NCR 2900/260 VT100 wide mode ANSI keyboard,
            200>,
        use=ncr260vt100an,
 ncr260vt100pp|NCR 2900/260 VT100 with PC+ keyboard,
-       is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<
-           200>,
        ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
        kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-       kend=\E[5~, khome=\E[2~, kich1=\E[1~, knp=\E[6~, kpp=\E[3~,
-       lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>,
-       rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<
-           200>,
-       smkx=\E=, use=ncr260vt100an,
+       kend=\E[5~, khome=\E[2~, kich1=\E[1~, kpp=\E[3~, lf1=pf1,
+       lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=,
+       use=ncr260vt100an,
 ncr260vt100wpp|NCR 2900/260 VT100 wide mode PC+  keyboard,
        cols#132,
        cup=\E[%i%p1%d;%p2%dH$<30>,
@@ -19533,16 +19446,15 @@ ncr260vt200an|NCR 2900/260 VT200 with ANSI keyboard,
        kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
        kf0=\EOy, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
        kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
-       kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\EOQ,
-       kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, kf23=\E[33~,
-       kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, kf27=\E[2~,
-       kf28=\E[3~, kf29=\E[4~, kf3=\EOR, kf30=\E[5~, kf31=\E[6~,
-       kf32=\E[7~, kf33=\E[8~, kf34=\E[9~, kf35=\E[10~, kf4=\EOS,
-       kf5=\E[M, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-       khlp=\E[28~, krdo=\E[29~, mc0=\E[i, mc4=\E[4i, mc5=\E[5i,
-       nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=\017$<20>,
-       rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
-       rmul=\E[24m,
+       kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~,
+       kf21=\E[31~, kf22=\E[32~, kf23=\E[33~, kf24=\E[34~,
+       kf25=\E[35~, kf26=\E[1~, kf27=\E[2~, kf28=\E[3~,
+       kf29=\E[4~, kf30=\E[5~, kf31=\E[6~, kf32=\E[7~, kf33=\E[8~,
+       kf34=\E[9~, kf35=\E[10~, kf5=\E[M, kf6=\E[17~, kf7=\E[18~,
+       kf8=\E[19~, kf9=\E[20~, khlp=\E[28~, krdo=\E[29~, mc0=\E[i,
+       mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>,
+       rmacs=\017$<20>, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>,
+       rmso=\E[27m, rmul=\E[24m,
        rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<
            200>,
        sc=\E7,
@@ -19561,9 +19473,8 @@ ncr260vt200wan|NCR 2900/260 VT200 wide mode ANSI keyboard,
 ncr260vt200pp|NCR 2900/260 VT200 with PC+ keyboard,
        ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
        kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-       kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-       lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=,
-       use=ncr260vt200an,
+       kend=\E[1~, khome=\E[H, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4,
+       rmkx=\E>, smkx=\E=, use=ncr260vt200an,
 ncr260vt200wpp|NCR 2900/260 VT200 wide mode PC+  keyboard,
        cols#132,
        cup=\E[%i%p1%d;%p2%dH$<30>,
@@ -19622,9 +19533,8 @@ ncr260vt300wan|NCR 2900/260 VT300 wide mode ANSI keyboard,
 ncr260vt300pp|NCR 2900/260 VT300 with PC+ keyboard,
        ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
        kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-       kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-       lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=,
-       use=ncr260vt300an,
+       kend=\E[1~, khome=\E[H, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4,
+       rmkx=\E>, smkx=\E=, use=ncr260vt300an,
 ncr260vt300wpp|NCR260VT300WPP|NCR 2900/260 VT300 wide mode PC+  keyboard,
        cols#132,
        cup=\E[%i%p1%d;%p2%dH$<30>,
@@ -20975,8 +20885,7 @@ apple2e|Apple //e,
 # mcvax!vu44!vu45!wilcke uses the "ap" entry together with Ascii Express Pro
 # 4.20, with incoming and outgoing terminals both on 0, emulation On.
 apple2e-p|Apple //e via Pascal,
-       cup=\036%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, kcub1=^H,
-       kcud1=\n, use=apple2e,
+       cup=\036%p2%{32}%+%c%p1%{32}%+%c, use=apple2e,
 # (ASCII Express) MouseTalk "Standard Apple //" emulation from BRL
 # Enable DC3/DC1 flow control with "stty ixon -ixany".
 apple-ae|ASCII Express,
@@ -21533,8 +21442,7 @@ mai|basic4|MAI Basic Four in ANSI mode,
 # (basis: removed obsolete ":ma=^K^P^R^L^L :nl=5000*^J:" -- esr)
 basis|BASIS108 computer with terminal translation table active,
        clear=\E*$<300/>, cud1=\n$<5000/>, ed=\EY, el=\ET, kbs=^H,
-       kcub1=^H, kcud1=\n, kcuf1=^L, kcuu1=^K, rmso=\E), sgr0=\E),
-       smso=\E(, use=adm3a,
+       rmso=\E), sgr0=\E), smso=\E(, use=adm3a,
 # luna's BMC terminal emulator
 luna|luna68k|LUNA68K Bitmap console,
        cols#88, lines#46, use=ansi-mini,
@@ -21648,7 +21556,7 @@ minitel1b|minitel 1-bistandard (in 40cols mode),
        use=minitel1,
 # rmkx posait des problemes (logout en sortant de vi).
 minitel1b-80|minitel 1-bistandard (standard teleinformatique),
-       am@, bw@, eslok@, hz@, msgr, G0,
+       am@, bw@, eslok@, hz@, msgr,
        colors@, cols#80, it#8, pairs@,
        acsc@, blink=\E[5m, bold=\E[1m, civis=\037@A\024\n,
        clear=\E[H\E[J, cnorm=\037@A\021\n, cuf1=\E[C,
@@ -21679,7 +21587,6 @@ minitel1b-80|minitel 1-bistandard (standard teleinformatique),
        .sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1
             ;%;m,
        .smacs=^N, C0=}#f[j+k+l+m+n+o~q=s_t+u+v+w+x!0\032,
-       E0=^O, S0=^N,
        XC=B\016%\017\,\243#\,\247]\,\260[\,\340@\,\347\\\\\,\351{\,
           \350}\,\371|\,\300A\,\301A\,\302A\,\303A\,\304A\,\305A\,
           \306E\,\307C\,\310E\,\311E\,\312E\,\313E\,\314I\,\315I\,
@@ -21731,10 +21638,9 @@ minitel1b-nb|minitel 1b (40cols) noir & blanc sans couleurs avec bold et dim ...
 # Fonctionne par exemple avec Midnight Commander (mc).
 
 minitel2-80|minitel 2 (80cols) avec filets VT100 (DEC),
-       G0,
        acsc=ffggjjkkllmmnnooqqssttuuvvwwxxyyzz||}},
        enacs=\E)0, rmacs=^O, smacs=^N, u6=\E[%i%d;%dR,
-       C0=ffggjjkkllmmnnooqqssttuuvvwwxxyyzz||}}, E0=^O,
+       C0=ffggjjkkllmmnnooqqssttuuvvwwxxyyzz||}},
        S0=\E)0\016,
        XC=B%\E(B\,\243\E(3}\,\247\E(R[\,\257\E(3v\,\260\E(3f\,\261
           \E(3g\,\265\E(3Y\,\267\E(3~\,\274\E(3O\,\275\E(3P\,\276
@@ -21814,7 +21720,7 @@ screen.minitel1b-80|screen.minitel2-80|screen.minitel12-80|Screen specific for m
 
 screen.minitel1-nb|Screen specific for minitel1-nb,
        colors@, ncv@, pairs@,
-       bold=\E[1m, dim=\E[2m, op@, setab@, setaf@, setb@, setf@,
+       bold=\E[1m, op@, setab@, setaf@, setb@, setf@,
        use=screen.minitel1,
 
 screen.minitel1b-nb|Screen specific for minitel1b-nb,
@@ -21898,8 +21804,7 @@ linux-m2|Linux Minitel 2 "like" Couleurs (Vert/Blanc/Noir+Bleu),
            900\E]P600A900\E]P700A900\E]P80000FF\E]P9FFFFFF\E]PAFFFF
            FF\E]PBFFFFFF\E]PCFFFFFF\E]PDFFFFFF\E]PEFFFFFF\E]PFFFFFF
            F\E[;37m,
-       oc@, op@, rmacs=^O, setab=^A, setaf=^A, sgr0=\E[;37m, smacs=^N,
-       .setab@, .setaf@,
+       oc@, op@, setab=^A, setaf=^A, sgr0=\E[;37m, .setab@, .setaf@,
        .smcup=\E]R\E]P100A900\E]P200A900\E]P3FFFFFF\E]P400A900\E]P5
               00A900\E]P600A900\E]P700A900\E]P80000FF\E]P9FFFFFF\E]
               PAFFFFFF\E]PBFFFFFF\E]PCFFFFFF\E]PDFFFFFF\E]PEFFFFFF
@@ -21921,10 +21826,10 @@ linux-s|Linux console with added status line at bottom,
 
 screen.linux-m1|Linux m1 specific for screen,
        ncv@,
-       dim=\E[2m, kbs=^?, kclr=\E\r, kdl1=\E\E[A, kf13=\E[25~,
-       kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
-       kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, kil1=\E\E[B, rmul@,
-       smul@, u8=\E[?1;2c,
+       kclr=\E\r, kdl1=\E\E[A, kf13=\E[25~, kf14=\E[26~,
+       kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~,
+       kf19=\E[33~, kf20=\E[34~, kil1=\E\E[B, rmul@, smul@,
+       u8=\E[?1;2c,
        E3=\E[99H\E[2J\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
           \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
           \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
@@ -21947,21 +21852,18 @@ screen.linux-m2|Linux m2 specific for screen,
 # Putty :
 
 putty-m1|Putty Minitel 1 "like" Couleurs,
-       hs,
        dim@, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
        kf5=\E[15~, rmul=\E[24m, smul=\E[4m, .E3=\E[300S,
        use=xterm+alt47, use=putty+screen, use=xterm+sl-twm,
        use=ecma+index, use=linux-m1,
 
 putty-m1b|Putty Minitel 1B "like" Monochrome (Gris/Blanc/Noir),
-       hs,
        dim@, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
        kf5=\E[15~, rmul=\E[24m, smul=\E[4m, .E3=\E[300S,
        use=xterm+alt47, use=putty+screen, use=xterm+sl-twm,
        use=ecma+index, use=linux-m1b,
 
 putty-m2|Putty Minitel 2 "like" Couleurs (Vert/Blanc/Noir),
-       hs,
        acsc=``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{
             {||}}~~,
        dim@, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
@@ -22541,13 +22443,12 @@ bq300-pc-w-rv|Questar 303 with PC keyboard reverse mode 132 columns,
 #    8 bit Control Characters,
 #    80 columns screen.
 bq300-8-pc|Q306-8-pc|Questar 303 with PC keyboard in full 8 bits 80 columns,
-       kbs=^H, kdch1=\2333~, kend=\2334~, kf1=\23317~,
-       kf10=\23328~, kf11=\23329~, kf12=\23331~, kf13@, kf14@,
-       kf15@, kf16@, kf17@, kf18@, kf19@, kf2=\23318~, kf20@,
-       kf3=\23319~, kf4=\23320~, kf5=\23321~, kf6=\23323~,
-       kf7=\23324~, kf8=\23325~, kf9=\23326~, kfnd@, khlp@,
-       khome=\2331~, kich1=\2332~, knp=\2336~, kpp=\2335~, krdo@,
-       kslt@, lf1@, lf2@, lf3@, lf4@, use=bq300-8,
+       kend=\2334~, kf1=\23317~, kf10=\23328~, kf11=\23329~,
+       kf12=\23331~, kf13@, kf14@, kf15@, kf16@, kf17@, kf18@, kf19@,
+       kf2=\23318~, kf20@, kf3=\23319~, kf4=\23320~, kf5=\23321~,
+       kf6=\23323~, kf7=\23324~, kf8=\23325~, kf9=\23326~, kfnd@,
+       khlp@, khome=\2331~, krdo@, kslt@, lf1@, lf2@, lf3@, lf4@,
+       use=bq300-8,
 bq300-8-pc-rv|Questar 303 with PC keyboard full 8 bits reverse mode 80 columns,
        flash=\E[?5l$<50>\E[?5h,
        is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E\sG\E[?42l\E[?4
@@ -22913,8 +22814,7 @@ ln03|DEC ln03 laser printer,
        smul=\E[4m,
 ln03-w|DEC ln03 laser printer 132 cols,
        cols#132,
-       bel=^G, cr=\r, cud1=\n, ht=^I, ind=\n, kbs=^H, kcub1=^H,
-       kcud1=\n, nel=\r\n, use=ln03,
+       kbs=^H, kcub1=^H, kcud1=\n, use=ln03,
 
 #### Delta Data (dd)
 #
@@ -23344,7 +23244,6 @@ graphos-30|graphos III with 30 lines,
 
 modgraph|mod24|modgraph terminal emulating VT100,
        xenl@,
-       cols#80, lines#24,
        cvvis=\E\^9;0s\E\^7;1s,
        is2=\E\^9;0s\E\^7;1s\E[3g\E\^11;9s\E\^11;17s\E\^11;25s\E\^11
            ;33s\E\^11;41s\E\^11;49s\E\^11;57s\E\^11;65s\E\^11;73s
@@ -23570,8 +23469,7 @@ vsc|Signetics Vsc Video driver by RMC,
 
 # (soroc120: removed obsolete ":ma=^K^P^R^L^L :" -- esr)
 soroc120|iq120|soroc|Soroc iq120,
-       clear=\E*$<2>, cud1=\n, ed=\EY, el=\ET, kcub1=^H, kcud1=\n,
-       kcuf1=^L, kcuu1=^K, use=adm3a,
+       clear=\E*$<2>, ed=\EY, el=\ET, use=adm3a,
 soroc140|iq140|Soroc iq140,
        OTbs, am, mir,
        cols#80, lines#24,
@@ -23672,11 +23570,10 @@ synertek|ktm|synertek380|Synertek KTM 3/80 tubeless terminal,
 #      Also the terminal understands a selection of Tektronix 4027 commands. 
 tab132|tab|tab132-15|tab 132/15,
        da, db,
-       OTdN@, cols#80, lines#24, lm#96,
-       cud1=\n, cup=\E[%i%p1%d;%p2%dH, dch1=\E[P, dl1=\E[M,
-       il1=\E[L, is2=\E[?7h\E[?3l\E[?5l, kcub1=\E[D, kcud1=\E[B,
-       kcuu1=\E[A, rmir=\E[4l, rmkx@, smir=\E[4h, smkx@,
-       use=decid+cpr, use=vt100+4bsd,
+       OTdN@, lm#96,
+       cup=\E[%i%p1%d;%p2%dH, dch1=\E[P, dl1=\E[M, il1=\E[L,
+       is2=\E[?7h\E[?3l\E[?5l, rmir=\E[4l, rmkx@, smir=\E[4h,
+       smkx@, use=decid+cpr, use=vt100+4bsd,
 tab132-w|tab132 in wide mode,
        cols#132,
        is2=\E[?7h\E[?3h\E[?5l, use=tab132,
@@ -23798,12 +23695,10 @@ ti703-w|ti707-w|Texas Instruments Silent 703/707 (132 column),
 # Texas Instruments 916 VDT 7 bit control mode
 #
 ti916|ti916-220-7|Texas Instruments 916 VDT 8859/1 VT220 mode 7 bit CTRL,
-       da, db, in, msgr,
-       cbt=\E[Z, clear=\E[H\E[2J$<6>, cub=\E[%p1%dD,
-       cud=\E[%p1%dB, cuf=\E[%p1%dC, cup=\E[%i%p1%d;%p2%dH,
-       cuu=\E[%p1%dA, dch=\E[%p1%dP$<250>, dch1=\E[P,
-       dl=\E[%p1%dM, ech=\E[%p1%dX$<20>, ed=\E[J$<6>, el=\E[0K,
-       el1=\E[1K, enacs=\E(B\E)0, ff=^L, flash=\E[?5h\E[?5l$<6>,
+       da, db, in,
+       cbt=\E[Z, clear=\E[H\E[2J$<6>, dch=\E[%p1%dP$<250>,
+       ech=\E[%p1%dX$<20>, ed=\E[J$<6>, el=\E[0K,
+       enacs=\E(B\E)0, ff=^L, flash=\E[?5h\E[?5l$<6>,
        hpa=\E[%p1%{1}%+%dG, hts=\E[0W, ich=\E[%p1%d@$<250>,
        il=\E[%p1%dL$<36>, ip=$<10>, is2=\E[1;24r\E[24;1H,
        kcmd=\E[29~, kdch1=\E[P, kent=\n, kf1=\E[17~, kf10=\E[28~,
@@ -23811,18 +23706,17 @@ ti916|ti916-220-7|Texas Instruments 916 VDT 8859/1 VT220 mode 7 bit CTRL,
        kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~,
        kf9=\E[26~, khome=\E[H, kich1=\E[@, knp=\E[S, kpp=\E[T,
        kprt=^X, prot=\E&, rmacs=\017$<2>, rs2=\E[!p, sgr@,
-       smacs=\016$<2>, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd,
-       use=vt220,
+       smacs=\016$<2>, vpa=\E[%p1%{1}%+%dd, use=vt220,
 #
 # Texas Instruments 916 VDT 8 bit control mode
 #
 ti916-8|ti916-220-8|Texas Instruments 916 VDT 8859/1 8 VT220 mode bit CTRL,
        kcmd=\23329~, kcub1=\233D, kcud1=\233B, kcuf1=\233C,
-       kcuu1=\233A, kdch1=\233P, kent=\n, kf1=\23317~,
-       kf10=\23328~, kf11=\23329~, kf12=\23331~, kf2=\23318~,
-       kf3=\23319~, kf4=\23320~, kf5=\23321~, kf6=\23323~,
-       kf7=\23324~, kf8=\23325~, kf9=\23326~, khome=\233H,
-       kich1=\233@, knp=\233S, kpp=\233T, kprt=^X, use=ti916,
+       kcuu1=\233A, kdch1=\233P, kf1=\23317~, kf10=\23328~,
+       kf11=\23329~, kf12=\23331~, kf2=\23318~, kf3=\23319~,
+       kf4=\23320~, kf5=\23321~, kf6=\23323~, kf7=\23324~,
+       kf8=\23325~, kf9=\23326~, khome=\233H, kich1=\233@,
+       knp=\233S, kpp=\233T, use=ti916,
 #
 # Texas Instruments 916 VDT 8859/1 7 bit control 132 column mode
 #
@@ -27880,4 +27774,7 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 #      + move xterm focus mode 1004 from xterm+sm+1006 into xterm+focus as
 #        fe/fd capabilities, like vim (vim-pr #13440).
 #
+# 2023-11-11
+#      + used "infocmp -u" to help trim redundant capabilities -TD
+#
 ######## SHANTIH!  SHANTIH!  SHANTIH!
index b8a9e4e66a4ddf921ee5afe92dcdaedf2113f339..85d2bdbaac0527cf91502eb38a2311e4a150fbb6 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 2020,2023 Thomas E. Dickey                                     *
  * Copyright 1998-2014,2017 Free Software Foundation, Inc.                  *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -43,7 +43,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_endwin.c,v 1.25 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_endwin.c,v 1.28 2023/11/11 21:27:32 tom Exp $")
 
 NCURSES_EXPORT(int)
 NCURSES_SP_NAME(endwin) (NCURSES_SP_DCL0)
@@ -52,20 +52,24 @@ NCURSES_SP_NAME(endwin) (NCURSES_SP_DCL0)
 
     T((T_CALLED("endwin(%p)"), (void *) SP_PARM));
 
-    if (SP_PARM) {
+    if (SP_PARM != NULL) {
+       if (SP_PARM->_endwin != ewSuspend) {
 #ifdef USE_TERM_DRIVER
-       TERMINAL_CONTROL_BLOCK *TCB = TCBOf(SP_PARM);
+           TERMINAL_CONTROL_BLOCK *TCB = TCBOf(SP_PARM);
 
-       SP_PARM->_endwin = ewSuspend;
-       if (TCB && TCB->drv && TCB->drv->td_scexit)
-           TCB->drv->td_scexit(SP_PARM);
+           SP_PARM->_endwin = ewSuspend;
+           if (TCB && TCB->drv && TCB->drv->td_scexit)
+               TCB->drv->td_scexit(SP_PARM);
 #else
-       SP_PARM->_endwin = ewSuspend;
-       SP_PARM->_mouse_wrap(SP_PARM);
-       _nc_screen_wrap();
-       _nc_mvcur_wrap();       /* wrap up cursor addressing */
+           SP_PARM->_endwin = ewSuspend;
+           SP_PARM->_mouse_wrap(SP_PARM);
+           _nc_screen_wrap();
+           _nc_mvcur_wrap();   /* wrap up cursor addressing */
 #endif
-       code = NCURSES_SP_NAME(reset_shell_mode) (NCURSES_SP_ARG);
+           code = OK;
+       }
+       if (NCURSES_SP_NAME(reset_shell_mode) (NCURSES_SP_ARG) == ERR)
+           code = ERR;
     }
 
     returnCode(code);
index d18945cd8ad51585887c5298ebc8ec646c94e999..0889a341858de0a595345ea736201a356829db7a 100644 (file)
@@ -35,7 +35,7 @@
  ****************************************************************************/
 
 /*
- * $Id: curses.priv.h,v 1.676 2023/09/23 18:46:47 tom Exp $
+ * $Id: curses.priv.h,v 1.677 2023/11/10 15:11:11 tom Exp $
  *
  *     curses.priv.h
  *
@@ -956,7 +956,8 @@ extern NCURSES_EXPORT_VAR(NCURSES_GLOBALS) _nc_globals;
 extern NCURSES_EXPORT_VAR(NCURSES_PRESCREEN) _nc_prescreen;
 
 typedef enum {
-    ewInitial = 0,
+    ewUnknown = 0,
+    ewInitial,
     ewRunning,
     ewSuspend
 } ENDWIN;
index 104374a503970d2c63d5058b1f45f69dedb4b853..fb2201680b6411d864fd43ac39321e92227fad33 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.4+20231104) unstable; urgency=low
+ncurses6 (6.4+20231111) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Mon, 30 Oct 2023 19:59:49 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Fri, 10 Nov 2023 05:36:12 -0500
 
 ncurses6 (5.9+20131005) unstable; urgency=low
 
index 104374a503970d2c63d5058b1f45f69dedb4b853..fb2201680b6411d864fd43ac39321e92227fad33 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.4+20231104) unstable; urgency=low
+ncurses6 (6.4+20231111) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Mon, 30 Oct 2023 19:59:49 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Fri, 10 Nov 2023 05:36:12 -0500
 
 ncurses6 (5.9+20131005) unstable; urgency=low
 
index be5d0827b84c4cee02b5b1c3551421fb07893d70..eb58e9c4213b2ac6878a67793a78fcd4737080cf 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.4+20231104) unstable; urgency=low
+ncurses6 (6.4+20231111) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Mon, 30 Oct 2023 19:59:49 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Fri, 10 Nov 2023 05:36:12 -0500
 
 ncurses6 (5.9+20120608) unstable; urgency=low
 
index 623826e85598fc925d1fa75fe5bdd6bd98a6887d..1c0f4bbe24e0ad036ed1f4bda2c187bd420a20f6 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.615 2023/11/03 07:58:06 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.616 2023/11/10 10:36:12 tom Exp $\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "6"\r
 !define VERSION_MINOR "4"\r
 !define VERSION_YYYY  "2023"\r
-!define VERSION_MMDD  "1104"\r
+!define VERSION_MMDD  "1111"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index f546b373d5119929dd0e02034ad906db236efd56..3b78c8033375067228949842292d710180266c62 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.4
-Release: 20231104
+Release: 20231111
 License: X11
 Group: Development/Libraries
 URL: https://invisible-island.net/ncurses/
index bf12676562d61938e16c66175d6bacbe3b626704..268e7180d2b662c571a95cc28dec625a415bd33b 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.4
-Release: 20231104
+Release: 20231111
 License: X11
 Group: Development/Libraries
 URL: https://invisible-island.net/ncurses/
index 0a3db841e4b9c232a5dc2f9bc28300e0e660a2ab..373bbcd64164ea35d79f25fe8a97914d74cc2117 100644 (file)
@@ -1,7 +1,7 @@
 Summary: Curses library with POSIX thread support.
 Name: ncursest6
 Version: 6.4
-Release: 20231104
+Release: 20231111
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index ec5e07650dd43e1bf766e3e164e8d0a0ba77b1ed..817845502db2b7e72024eb37c06849cc4ea58a2c 100644 (file)
@@ -43,7 +43,7 @@
 
 #include <dump_entry.h>
 
-MODULE_ID("$Id: infocmp.c,v 1.157 2023/05/27 20:13:10 tom Exp $")
+MODULE_ID("$Id: infocmp.c,v 1.158 2023/11/11 18:25:52 tom Exp $")
 
 #define MAX_STRING     1024    /* maximum formatted string */
 
@@ -209,15 +209,18 @@ use_predicate(unsigned type, PredIdx idx)
             * unlike numbers and strings, whose cancelled/absent state is
             * recorded in the terminfo database.
             */
-           for (ep = &entries[1]; ep < entries + termcount; ep++)
-               if (ep->tterm.Booleans[idx] == TRUE) {
-                   is_set = entries[0].tterm.Booleans[idx];
-                   break;
+           if (idx < NUM_BOOLEANS(&(entries[0].tterm))) {
+               for (ep = &entries[1]; ep < entries + termcount; ep++) {
+                   if (idx < NUM_BOOLEANS(&(ep->tterm))
+                       && ep->tterm.Booleans[idx] == TRUE) {
+                       is_set = entries[0].tterm.Booleans[idx];
+                       break;
+                   }
                }
-           if (is_set != entries[0].tterm.Booleans[idx])
-               return (!is_set);
-           else
-               return (FAIL);
+               if (is_set != entries[0].tterm.Booleans[idx])
+                   return (!is_set);
+           }
+           return (FAIL);
        }
 
     case NUMBER:
@@ -229,16 +232,18 @@ use_predicate(unsigned type, PredIdx idx)
             * capability gets the first non-default value found
             * in the sequence of use entries'.
             */
-           for (ep = &entries[1]; ep < entries + termcount; ep++)
-               if (VALID_NUMERIC(ep->tterm.Numbers[idx])) {
-                   value = ep->tterm.Numbers[idx];
-                   break;
-               }
+           if (idx < NUM_NUMBERS(&(entries[0].tterm))) {
+               for (ep = &entries[1]; ep < entries + termcount; ep++)
+                   if (idx < NUM_NUMBERS(&(ep->tterm))
+                       && VALID_NUMERIC(ep->tterm.Numbers[idx])) {
+                       value = ep->tterm.Numbers[idx];
+                       break;
+                   }
 
-           if (value != entries[0].tterm.Numbers[idx])
-               return (value != ABSENT_NUMERIC);
-           else
-               return (FAIL);
+               if (value != entries[0].tterm.Numbers[idx])
+                   return (value != ABSENT_NUMERIC);
+           }
+           return (FAIL);
        }
 
     case STRING:
@@ -252,18 +257,20 @@ use_predicate(unsigned type, PredIdx idx)
             * capability gets the first non-default value found
             * in the sequence of use entries'.
             */
-           for (ep = &entries[1]; ep < entries + termcount; ep++)
-               if (ep->tterm.Strings[idx]) {
-                   usestr = ep->tterm.Strings[idx];
-                   break;
-               }
+           if (idx < NUM_STRINGS(&(entries[0].tterm))) {
+               for (ep = &entries[1]; ep < entries + termcount; ep++)
+                   if (idx < NUM_STRINGS(&(ep->tterm))
+                       && ep->tterm.Strings[idx]) {
+                       usestr = ep->tterm.Strings[idx];
+                       break;
+                   }
 
-           if (usestr == ABSENT_STRING && termstr == ABSENT_STRING)
-               return (FAIL);
-           else if (!usestr || !termstr || capcmp(idx, usestr, termstr))
-               return (TRUE);
-           else
-               return (FAIL);
+               if (usestr == ABSENT_STRING && termstr == ABSENT_STRING)
+                   return (FAIL);
+               else if (!usestr || !termstr || capcmp(idx, usestr, termstr))
+                   return (TRUE);
+           }
+           return (FAIL);
        }
     }
 
index 61c4cc7200a68a5210e5795fe221ed2fc5ffd8bc..62e8c644e23bc86d991720d4af9043f08fa7e9e5 100644 (file)
@@ -27,7 +27,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: demo_forms.c,v 1.62 2023/05/27 20:13:10 tom Exp $
+ * $Id: demo_forms.c,v 1.63 2023/11/11 00:29:53 tom Exp $
  *
  * Demonstrate a variety of functions from the form library.
  * Thomas Dickey - 2003/4/26
@@ -154,7 +154,7 @@ make_label(const char *label, int frow, int fcol)
 
     if (f) {
        set_field_buffer(f, 0, label);
-       set_field_opts(f, (int) ((unsigned) field_opts(f) & ~O_ACTIVE));
+       set_field_opts(f, (int) ((unsigned) field_opts(f) & (unsigned) ~O_ACTIVE));
     }
     return (f);
 }
index 14a8c9fa267d1af47d793bcc38669659a204246a..eed4dbcbdf8369414379dc3e46b92838a39cbdc6 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright 2018,2020 Thomas E. Dickey                                     *
+ * Copyright 2018-2020,2023 Thomas E. Dickey                                *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: dump_window.c,v 1.4 2020/02/02 23:34:34 tom Exp $
+ * $Id: dump_window.c,v 1.5 2023/11/11 00:30:50 tom Exp $
  */
 #include <dump_window.h>
 
@@ -97,7 +97,7 @@ dump_window(WINDOW *w)
                        char aa;
                        char pp;
 
-                       temp = ((data & A_ATTRIBUTES) & (~A_COLOR));
+                       temp = ((data & A_ATTRIBUTES) & (chtype) (~A_COLOR));
                        if (temp) {
                            if (temp & A_ALTCHARSET) {
                                aa = (temp & A_BOLD) ? 'A' : 'a';
index 3e0b76930facddb880b04e35991f87c08d23eac4..68198ed755b30431b95f4c9e5f390f6123110450 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright 2020-2021,2022 Thomas E. Dickey                                *
+ * Copyright 2020-2022,2023 Thomas E. Dickey                                *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: dup_field.c,v 1.7 2022/12/10 23:31:31 tom Exp $
+ * $Id: dup_field.c,v 1.8 2023/11/11 00:29:10 tom Exp $
  *
  * Demonstrate dup_field().
  */
@@ -116,7 +116,7 @@ make_label(const char *label, int frow, int fcol)
 
     if (f) {
        set_field_buffer(f, 0, label);
-       set_field_opts(f, (int) ((unsigned) field_opts(f) & ~O_ACTIVE));
+       set_field_opts(f, (int) ((unsigned) field_opts(f) & (unsigned) ~O_ACTIVE));
     }
     return (f);
 }
index 96b02e14f355e29fcb448dc6ce003720a936dd0a..b616919f4653c0a5b92bc7deb148b9aece0b249f 100644 (file)
@@ -27,7 +27,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: list_keys.c,v 1.32 2023/06/24 13:57:11 tom Exp $
+ * $Id: list_keys.c,v 1.33 2023/11/11 00:35:05 tom Exp $
  *
  * Author: Thomas E Dickey
  *
 static bool f_opt = FALSE;
 static bool m_opt = FALSE;
 static bool t_opt = FALSE;
+
+#if NCURSES_XNAMES || HAVE_USE_EXTENDED_NAMES
 static bool x_opt = FALSE;
+#endif
 
 typedef enum {
     ktCursor
@@ -471,7 +474,7 @@ main(int argc, char *argv[])
        case 't':
            t_opt = TRUE;
            break;
-#ifdef NCURSES_VERSION
+#if NCURSES_XNAMES || HAVE_USE_EXTENDED_NAMES
        case 'x':
            x_opt = TRUE;
            break;
index 7e3fcc221cf5b2dff10230f314146aa573453d7c..fb97d027e3d894977abd4904d8311894ee7eb703 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: modules,v 1.78 2022/08/13 20:53:43 tom Exp $
+# $Id: modules,v 1.79 2023/11/10 11:48:20 tom Exp $
 ##############################################################################
-# Copyright 2018-2021,2022 Thomas E. Dickey                                  #
+# Copyright 2018-2022,2023 Thomas E. Dickey                                  #
 # Copyright 1998-2016,2017 Free Software Foundation, Inc.                    #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
@@ -102,6 +102,7 @@ test_addstr progs           $(srcdir)       $(HEADER_DEPS)  $(srcdir)/linedata.h
 test_addwstr   progs           $(srcdir)       $(HEADER_DEPS)  $(srcdir)/linedata.h
 test_arrays    progs           $(srcdir)       $(HEADER_DEPS)
 test_delwin    progs           $(srcdir)       $(HEADER_DEPS)
+test_endwin    progs           $(srcdir)       $(HEADER_DEPS)
 test_get_wstr  progs           $(srcdir)       $(HEADER_DEPS)
 test_getstr    progs           $(srcdir)       $(HEADER_DEPS)
 test_instr     progs           $(srcdir)       $(HEADER_DEPS)
index e337319edf1edc4a5dda3f3530e5b6036d8a8207..84bac3f4b5659121b4dfa301cb50eb0c250ea5af 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright 2020-2021,2022 Thomas E. Dickey                                *
+ * Copyright 2020-2022,2023 Thomas E. Dickey                                *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: move_field.c,v 1.14 2022/12/10 23:31:31 tom Exp $
+ * $Id: move_field.c,v 1.15 2023/11/11 00:28:19 tom Exp $
  *
  * Demonstrate move_field().
  */
@@ -116,7 +116,7 @@ make_label(const char *label, int frow, int fcol)
 
     if (f) {
        set_field_buffer(f, 0, label);
-       set_field_opts(f, (int) ((unsigned) field_opts(f) & ~O_ACTIVE));
+       set_field_opts(f, (int) ((unsigned) field_opts(f) & (unsigned) ~O_ACTIVE));
     }
     return (f);
 }
index a402c4c51fffb53f8bdf462adad9e3507fd14d8d..a272d1423eeefd43c08134d41cdd8950a986b29b 100644 (file)
@@ -41,7 +41,7 @@ AUTHOR
    Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993
            Thomas E. Dickey (beginning revision 1.27 in 1996).
 
-$Id: ncurses.c,v 1.535 2023/05/27 20:13:10 tom Exp $
+$Id: ncurses.c,v 1.538 2023/11/11 01:23:59 tom Exp $
 
 ***************************************************************************/
 
@@ -3157,7 +3157,7 @@ color_edit(bool recur GCC_UNUSED)
  *
  ****************************************************************************/
 static bool
-cycle_attr(int ch, unsigned *at_code, chtype *attr, ATTR_TBL * list, unsigned limit)
+cycle_attr(int ch, unsigned *at_code, attr_t *attr, ATTR_TBL * list, unsigned limit)
 {
     bool result = TRUE;
 
@@ -3318,7 +3318,7 @@ slk_test(bool recur GCC_UNUSED)
     int c, fmt = 1;
     char buf[9];
     char *s;
-    chtype attr = A_NORMAL;
+    attr_t attr = A_NORMAL;
     unsigned at_code = 0;
 #if HAVE_SLK_COLOR
     int fg = COLOR_BLACK;
@@ -3408,7 +3408,7 @@ slk_test(bool recur GCC_UNUSED)
 
        default:
            if (cycle_attr(c, &at_code, &attr, my_list, my_size)) {
-               slk_attrset(attr);
+               slk_attrset((chtype) attr);
                slk_touch();
                slk_noutrefresh();
                break;
@@ -3824,7 +3824,7 @@ acs_test(bool recur GCC_UNUSED)
     const char *pch_kludge = ((term != 0 && strstr(term, "linux"))
                              ? "p=PC, "
                              : "");
-    chtype attr = A_NORMAL;
+    attr_t attr = A_NORMAL;
     int digit = 0;
     int repeat = 1;
     int fg = COLOR_BLACK;
@@ -6369,7 +6369,7 @@ make_label(int frow, int fcol, NCURSES_CONST char *label)
 
     if (f) {
        set_field_buffer(f, 0, label);
-       set_field_opts(f, (int) ((unsigned) field_opts(f) & ~O_ACTIVE));
+       set_field_opts(f, (int) ((unsigned) field_opts(f) & (unsigned) ~O_ACTIVE));
     }
     return (f);
 }
index 191a16dca1e57dba16da1ee82a9c81737ddd7cd7..4e7e7f43e4602aaa96a079af41cb2a7f260c8034 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: programs,v 1.55 2022/08/13 23:37:10 tom Exp $
+# $Id: programs,v 1.56 2023/11/10 11:48:38 tom Exp $
 ##############################################################################
 # Copyright 2018-2021,2022 Thomas E. Dickey                                  #
 # Copyright 2006-2016,2017 Free Software Foundation, Inc.                    #
@@ -97,6 +97,7 @@ test_addstr   $(LDFLAGS_CURSES)       $(LOCAL_LIBS)   test_addstr
 test_addwstr   $(LDFLAGS_CURSES)       $(LOCAL_LIBS)   test_addwstr
 test_arrays    $(LDFLAGS_TINFO)        $(LOCAL_LIBS)   test_arrays
 test_delwin    $(LDFLAGS_CURSES)       $(LOCAL_LIBS)   test_delwin
+test_endwin    $(LDFLAGS_CURSES)       $(LOCAL_LIBS)   test_endwin
 test_get_wstr  $(LDFLAGS_CURSES)       $(LOCAL_LIBS)   test_get_wstr popup_msg
 test_getstr    $(LDFLAGS_CURSES)       $(LOCAL_LIBS)   test_getstr popup_msg
 test_instr     $(LDFLAGS_CURSES)       $(LOCAL_LIBS)   test_instr
index 555c8425bada2459bfad008b3444af3b164a8dad..7b18557d2e6ca3ae6ac4e742af8ee152aa8ce9ae 100644 (file)
@@ -30,7 +30,7 @@
 /****************************************************************************
  *  Author: Thomas E. Dickey                    1996-on                     *
  ****************************************************************************/
-/* $Id: test.priv.h,v 1.216 2023/04/23 23:38:22 tom Exp $ */
+/* $Id: test.priv.h,v 1.217 2023/11/11 00:23:26 tom Exp $ */
 
 #ifndef __TEST_PRIV_H
 #define __TEST_PRIV_H 1
@@ -765,11 +765,11 @@ extern int optind;
 #define VERSION_COMMON() \
 static char *version_common(char **argv) { \
        char *base = argv[0]; \
-       char *leaf = strrchr(base, '/'); \
+       char *part = strrchr(base, '/'); \
        char *result = malloc(strlen(base) + 80); \
        if (result != NULL) { \
-           if (leaf++ == NULL) leaf = base; \
-           sprintf(result, "%.20s: ", leaf); \
+           if (part++ == NULL) part = base; \
+           sprintf(result, "%.20s: ", part); \
            format_version(result + strlen(result)); \
        } \
        return result; \
diff --git a/test/test_endwin.c b/test/test_endwin.c
new file mode 100644 (file)
index 0000000..8e0d283
--- /dev/null
@@ -0,0 +1,132 @@
+/****************************************************************************
+ * Copyright 2023 Thomas E. Dickey                                          *
+ *                                                                          *
+ * Permission is hereby granted, free of charge, to any person obtaining a  *
+ * copy of this software and associated documentation files (the            *
+ * "Software"), to deal in the Software without restriction, including      *
+ * without limitation the rights to use, copy, modify, merge, publish,      *
+ * distribute, distribute with modifications, sublicense, and/or sell       *
+ * copies of the Software, and to permit persons to whom the Software is    *
+ * furnished to do so, subject to the following conditions:                 *
+ *                                                                          *
+ * The above copyright notice and this permission notice shall be included  *
+ * in all copies or substantial portions of the Software.                   *
+ *                                                                          *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
+ *                                                                          *
+ * Except as contained in this notice, the name(s) of the above copyright   *
+ * holders shall not be used in advertising or otherwise to promote the     *
+ * sale, use or other dealings in this Software without prior written       *
+ * authorization.                                                           *
+ ****************************************************************************/
+/*
+ * $Id: test_endwin.c,v 1.2 2023/11/10 15:17:19 tom Exp $
+ */
+#include <test.priv.h>
+
+static void
+usage(int ok)
+{
+    static const char *msg[] =
+    {
+       "Usage: test_endwin [options]"
+       ,""
+       ,"Options:"
+       ," -e   call endwin() an extra time"
+       ," -i   call initscr() before endwin()"
+       ," -n   call newterm() before endwin()"
+       ," -r   call refresh() before endwin()"
+       ," -s   call getch() after endwin(), to refresh screen"
+       ,""
+       ,USAGE_COMMON
+    };
+    size_t n;
+
+    for (n = 0; n < SIZEOF(msg); n++)
+       fprintf(stderr, "%s\n", msg[n]);
+
+    ExitProgram(ok ? EXIT_SUCCESS : EXIT_FAILURE);
+}
+/* *INDENT-OFF* */
+VERSION_COMMON()
+/* *INDENT-ON* */
+
+#define status(opt,name,rc) if (opt) printf(" %s: %s", name, (rc) == OK ? "OK" : "ERR")
+
+int
+main(int argc, char *argv[])
+{
+    int ch;
+    int rc_r = OK;
+    int rc_e1 = OK;
+    int rc_e2 = OK;
+    int rc_e3 = OK;
+    SCREEN *sp = NULL;
+    bool opt_e = FALSE;
+    bool opt_i = FALSE;
+    bool opt_n = FALSE;
+    bool opt_r = FALSE;
+    bool opt_s = FALSE;
+
+    while ((ch = getopt(argc, argv, "einrs" OPTS_COMMON)) != -1) {
+       switch (ch) {
+       case 'e':
+           opt_e = TRUE;
+           break;
+       case 'i':
+           opt_i = TRUE;
+           break;
+       case 'n':
+           opt_n = TRUE;
+           break;
+       case 'r':
+           opt_r = TRUE;
+           break;
+       case 's':
+           opt_s = TRUE;
+           break;
+       case OPTS_VERSION:
+           show_version(argv);
+           ExitProgram(EXIT_SUCCESS);
+       default:
+           usage(ch == OPTS_USAGE);
+           /* NOTREACHED */
+       }
+    }
+    if (optind < argc)
+       usage(FALSE);
+    if (opt_i && opt_n)
+       usage(TRUE);
+
+    if (opt_i) {
+       initscr();
+    } else if (opt_n) {
+       sp = newterm(NULL, stdout, stdin);
+    }
+    if (opt_r) {
+       rc_r = refresh();
+    }
+    rc_e1 = endwin();
+    if (opt_e) {
+       rc_e2 = endwin();
+    }
+    if (opt_s) {
+       getch();
+       rc_e3 = endwin();
+    }
+    printf("status:");
+    status(opt_i, "initscr(-i)", OK);
+    status(opt_n, "newterm(-n)", (sp != NULL) ? OK : ERR);
+    status(opt_r, "refresh(-r)", rc_r);
+    status(TRUE, "endwin", rc_e1);
+    status(opt_e, "endwin(-e)", rc_e2);
+    status(opt_s, "endwin(-s)", rc_e3);
+    printf("\n");
+    ExitProgram(EXIT_SUCCESS);
+}
index 1c4e0d4c2beae380ef6b97f0753d4f0ed6a220a3..50289defdf603dd7cdfd460cf52e0d04daee424e 100644 (file)
@@ -29,7 +29,7 @@
 /*
  * Author: Thomas E. Dickey
  *
- * $Id: test_tparm.c,v 1.37 2023/04/28 23:12:00 tom Exp $
+ * $Id: test_tparm.c,v 1.39 2023/11/11 01:00:03 tom Exp $
  *
  * Exercise tparm/tiparm, either for all possible capabilities with fixed
  * parameters, or one capability with specific combinations of parameters.
@@ -69,11 +69,17 @@ failed(const char *msg)
 #if HAVE_TIGETSTR
 
 static int a_opt;
-static int i_opt;
 static int p_opt;
-static int s_opt;
 static int v_opt;
 
+#if HAVE_TIPARM
+static int i_opt;
+#endif
+
+#if HAVE_TIPARM_S
+static int s_opt;
+#endif
+
 /*
  * Total tests (and failures):
  */
@@ -605,6 +611,8 @@ main(int argc, char *argv[])
                    all_caps[len_caps++] = strdup(ExtStrname(term, (int) n, strnames));
                }
            }
+#else
+           (void) std_caps;
 #endif
 
            /*