]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - misc/terminfo.src
ncurses 6.2 - patch 20201128
[ncurses.git] / misc / terminfo.src
index 70047be7f615793b87123e1c7c19b343a54936b8..0d3896665fe63a5c3ecff6339cfebc2a49aee448 100644 (file)
@@ -6,8 +6,8 @@
 # Report bugs and new terminal descriptions to
 #      bug-ncurses@gnu.org
 #
-#      $Revision: 1.779 $
-#      $Date: 2020/01/19 01:09:38 $
+#      $Revision: 1.833 $
+#      $Date: 2020/11/28 23:10:42 $
 #
 # 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
@@ -966,9 +966,7 @@ linux-basic|linux console,
        il=\E[%p1%dL, il1=\E[L, ind=\n, kb2=\E[G, kbs=^?, kcbt=\E[Z,
        kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
        kdch1=\E[3~, kend=\E[4~, kf1=\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=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D,
+       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~,
        khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
        kspd=^Z, nel=\r\n, rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l,
@@ -977,7 +975,14 @@ linux-basic|linux console,
            %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=vt102+enq, use=klone+sgr,
-       use=ecma+color,
+       use=ecma+color, use=linux+sfkeys,
+
+linux+decid|ncurses extension for Linux console DECID,
+       u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?6c, u9=\EZ,
+
+linux+sfkeys|shifted function-keys for Linux console,
+       kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~,
+       kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~,
 
 linux-m|Linux console no color,
        colors@, pairs@,
@@ -1024,8 +1029,8 @@ linux2.2|linux 2.2.x console,
 #      'r' scan line 7
 #      '_' scan line 9
 linux2.6|linux 2.6.x console,
-       acsc=++\,\,--..00__``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwx
-            xyyzz{{||}c~~,
+       acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
+            yzz{{||}}~~,
        enacs=\E)0, rmacs=^O,
        sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
            %t;2%;%?%p6%t;1%;m%?%p9%t\016%e\017%;,
@@ -1131,7 +1136,17 @@ fbterm|FbTerm for Linux with framebuffer,
 # (but nonstandard) SGR 21, which was supported in the Linux console since 1992
 # as an equivalent for SGR 22.  Long after (early 2018), someone modified the
 # console driver to make it ignore SGR 21 because the ECMA-48 standard
-# suggested a different use for that particular code.
+# suggested a different use for that particular code:
+#
+# https://github.com/torvalds/linux/commit/65d9982d7e523a1a8e7c9af012da0d166f72fc56#diff-7da3c215d12c9f6b88e1a37d38b116f0
+#
+# Two years later, someone (unfamiliar with ECMA-48 this time) documented it:
+#
+# https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/commit/man4/console_codes.4?id=a133a6bc03d751a424fe0a4adea2198757599615
+#
+# For background, refer to the report on bug-ncurses:
+#
+# https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00059.html
 linux-16color|linux console with 16 colors,
        colors#16, ncv#42, pairs#0x100,
        setab=\E[4%p1%{8}%m%d%?%p1%{7}%>%t;5%e;25%;m,
@@ -1210,7 +1225,7 @@ mach-gnu-color|Mach Console with ANSI color,
        setaf=\E[3%p1%dm, use=mach-gnu,
 
 # From: Marcus Brinkmann
-# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/
+# http://git.savannah.gnu.org/cgit/hurd/hurd.git/log/console/
 #
 # Comments in the original are summarized here:
 #
@@ -2168,12 +2183,19 @@ bsdos-ppc|PowerPC BSD/OS Console,
 # to a crude plotting feature) -TD
 vt52|dec vt52,
        OTbs,
+       it#8, lines#24,
+       acsc=+h.k0affggolpnqprrss, home=\EH, kbs=^H, nel=\r\n,
+       ri=\EI, rmacs=\EG, rmkx=\E>, smacs=\EF, smkx=\E=, u8=\E/[KL],
+       use=vt50h,
+
+# This is more likely the "vt52" that you would see in emulation, i.e., no
+# keypad, no graphics.
+vt52-basic|vt52 for emulators,
        cols#80, it#8, lines#24,
-       acsc=+h.k0affggolpnqprrss, bel=^G, clear=\EH\EJ, cr=\r,
-       cub1=\ED, cud1=\EB, cuf1=\EC,
-       cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
-       el=\EK, home=\EH, ht=^I, ind=\n, kbs=^H, kcub1=\ED, kcud1=\EB,
-       kcuf1=\EC, kcuu1=\EA, nel=\r\n, ri=\EI, rmacs=\EG, smacs=\EF,
+       bel=^G, clear=\EH\EJ, cr=\r, cub1=\ED, cud1=\EB, cuf1=\EC,
+       cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK,
+       home=\EH, ht=^I, ind=\n, kbs=^H, kcub1=\ED, kcud1=\EB,
+       kcuf1=\EC, kcuu1=\EA, nel=\r\n, ri=\EI,
 
 #### DEC VT100 and compatibles
 #
@@ -2710,8 +2732,8 @@ vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am,
 #   host writable status line, yet another different DRCS matrix size,
 #   and such, but they add the DEC Technical character set, Multiple text
 #   pages, selectable length pages, and the like.  The difference between
-#   the vt330 and vt340 is that the latter has only 2 planes and a monochrome
-#   monitor, the former has 4 planes and a color monitor.  These terminals
+#   the vt330 and vt340 is that the former has only 2 planes and a monochrome
+#   monitor, the latter has 4 planes and a color monitor.  These terminals
 #   support VT131 and ANSI block mode, but as with much of these things,
 #   termcap/terminfo doesn't deal with these features.
 #
@@ -2768,7 +2790,7 @@ vt420+lrmm|VT420 left/right margins,
 #    macros, and other features too numerous to remember right now.  TERMCAP
 #    can only take advantage of a few of these added features.
 #
-# Note that this entry is are set up in what was the standard way for GNU
+# Note that this entry is set up in what was the standard way for GNU
 # Emacs v18 terminal modes to deal with the cursor keys in that the arrow
 # keys were switched into application mode at the same time the numeric pad
 # is switched into application mode.  This changes the definitions of the
@@ -2945,7 +2967,7 @@ dec-vt220|DOS tnvt200 terminal emulator,
 # Zstem340 is an (IMHO) excellent VT emulator for PC's.  I recommend it to
 # anyone who needs PC VT340 emulation. (or anything below that level, for
 # that matter -- DEC's ALL-in-1 seems happy with it, as does INFOPLUS's
-# RDBM systems, it includes ReGIS and SiXel support!  I'm impressed...
+# RDBM systems, it includes ReGIS and Sixel support!  I'm impressed...
 # I can send the address if requested.
 # (z340: changed garbled \E[5?l to \E[?5l, DEC smooth scroll off -- esr)
 # From: Adam Thompson <athompso@pangea.ca> Sept 10 1995
@@ -3839,13 +3861,31 @@ crt|crt-vt220|CRT 2.3 emulating VT220,
        hts=\EH, use=vt100+enq, use=vt220, use=ecma+color,
 
 #### PuTTY
-# PuTTY 0.55 (released 3 August 2004)
+# PuTTY 0.74 (27 June 2020)
 # http://www.chiark.greenend.org.uk/~sgtatham/putty/
 #
+# PuTTY 0.73 (September 2019)
+# Testing with tack:
+#      does not implement italics
+#      does not implement cross-out text
+#      its settings dialog allows some of the VT100 line-drawing tests to pass
+#      (not the padding test, though)
+# Testing with vttest:
+#      xterm mouse modes are incomplete: X10, highlight, any-event, and focus in/out modes are not implemented.
+#      does not implement protected areas
+#      does not implement SL/SR
+#
+# PuTTY 0.71 (March 2019) provided a workable "rep" capability.  It also
+# changed longstanding keypad assignments, so that these no longer apply:
+#      kLFT=\E[D, kRIT=\E[C, kb2=\E[G,
+#
+# PuTTY recognized xterm's 1006 mouse mode in late 2015; subsequent release was
+# in 2017 (0.70) -TD
+#
 # Comparing with 0.51, vttest is much better (only a few problems with the
 # cursor position reports and wrapping).
 #
-# PuTTY 0.51 (released 14 December 2000)
+# PuTTY 0.51 (14 December 2000)
 #
 # This emulates vt100 + vt52 (plus a few vt220 features:  ech, SRM, DECTCEM, as
 # well as SCO and Atari, color palettes from Linux console).  Reading the code,
@@ -3857,21 +3897,20 @@ crt|crt-vt220|CRT 2.3 emulating VT220,
 #      Control responses, wrapping and tabs are buggy, failing a couple of
 #      screens in vttest.
 #
-#      xterm mouse support is not implemented (unrelease version may).
+#      xterm mouse support is not implemented (unreleased version may).
 #
 # Several features such as backspace/delete are optional; this entry documents
-# the default behavior -TD
+# the default behavior.  None of the combinations of keyboard settings match
+# those used for xterm -TD
 #
 # PuTTY recognizes xterm's 1049 mode for switching to/from alternate screen,
 # but implements it incorrectly as mentioned here:
 #      http://stackoverflow.com/questions/24613237/terminal-retains-bg-color-after-closing-vim-using-color-scheme-and-putty-256co/37869114#37869114
-# PuTTY recognized xterm's 1006 mode since late 2015; subsequent release was
-# in 2017 (0.70) -TD
 putty|PuTTY terminal emulator,
        am, bce, bw, ccc, mir, msgr, xenl, xon, XT,
        colors#8, it#8, ncv#22, pairs#64, U8#1,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-       bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
+       bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
        clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
        csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
        cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C,
@@ -3885,18 +3924,17 @@ putty|PuTTY terminal emulator,
              %%G\340\202\242\E%%@%e%p1%c%;,
        dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
        el1=\E[1K, enacs=\E(B\E)0, flash=\E[?5h$<100/>\E[?5l,
-       home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, il=\E[%p1%dL,
-       il1=\E[L, ind=\n,
+       home=\E[H, hpa=\E[%i%p1%dG, il=\E[%p1%dL, il1=\E[L, ind=\n,
        initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/
              %02x%p4%{255}%*%{1000}%/%02x,
        is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>\E]R,
-       kLFT=\E[D, kRIT=\E[C, kb2=\E[G, kbs=^?, kcbt=\E[Z,
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-       kdch1=\E[3~, kend=\E[4~, khome=\E[1~, kich1=\E[2~,
-       kind=\E[B, knp=\E[6~, kpp=\E[5~, kri=\E[A, kspd=^Z, nel=\r\n,
-       oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
-       rmam=\E[?7l, rmcup=\E[2J\E[?47l, rmir=\E[4l,
-       rmkx=\E[?1l\E>, rmpch=\E[10m, rmso=\E[27m, rmul=\E[24m,
+       kbs=^?, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
+       kcuu1=\EOA, kdch1=\E[3~, kend=\E[4~, khome=\E[1~,
+       kich1=\E[2~, kind=\E[B, knp=\E[6~, kpp=\E[5~, kri=\E[A,
+       kspd=^Z, nel=\r\n, oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m,
+       ri=\EM, rmacs=^O, rmam=\E[?7l, rmcup=\E[2J\E[?47l,
+       rmir=\E[4l, rmkx=\E[?1l\E>, rmpch=\E[10m, rmso=\E[27m,
+       rmul=\E[24m,
        rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l,
        s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, sc=\E7,
        setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
@@ -3904,9 +3942,15 @@ putty|PuTTY terminal emulator,
            %;m%?%p9%t\016%e\017%;,
        sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h,
        smir=\E[4h, smkx=\E[?1h\E=, smpch=\E[11m, smso=\E[7m,
-       smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3J,
-       use=ecma+index, use=xterm+sm+1006, use=putty+fnkeys,
-       use=vt102+enq, use=xterm+sl,
+       smul=\E[4m, vpa=\E[%i%p1%dd, E3=\E[3J, use=ansi+tabs,
+       use=ansi+rep, use=ecma+index, use=xterm+sm+1006,
+       use=putty+fnkeys, use=vt102+enq, use=xterm+sl,
+       use=vt100+fnkeys, use=putty+keypad,
+putty+keypad|PuTTY numeric keypad,
+       kp1=\EOq, kp2=\EOr, kp3=\EOs, kp4=\EOt, kp5=\EOu, kp6=\EOv,
+       kp7=\EOw, kp8=\EOx, kp9=\EOy, kpADD=\EOl, kpDIV=\EOQ,
+       kpDOT=\EOn, kpMUL=\EOR, kpNUM=\EOP, kpSUB=\EOS, kpZRO=\EOp,
+
 vt100-putty|Reset PuTTY to pure vt100,
        rs2=\E<\E["p\Ec\E[?3l\E]R\E[40"p\E[61"p\E[50;1;2"p,
        use=vt100,
@@ -3989,8 +4033,8 @@ putty+fnkeys+sco|SCO fn-keys for PuTTY,
 # https://github.com/mintty/mintty
 #
 # Originally a fork (and reduction) of PuTTY, this has grown from 15ksloc in
-# 2013 to 38ksloc in 2019.  That is still smaller than PuTTY (160ksloc), but
-# larger than rxvt (31ksloc).
+# 2013 to 41ksloc in 2020.  That is still smaller than PuTTY (160ksloc), but
+# larger than rxvt (31ksloc) and slightly smaller than rxvt-unicode (42ksloc).
 #
 # Version 3.0 responds to DA as a VT400, however it does not implement the
 # application keypad.  The assignment of cursor-keys versus modifiers differs
@@ -4276,6 +4320,22 @@ ms-terminal|Windows10 terminal,
        use=xterm-basic,
 
 #### Visual Studio
+# Visual Studio Code 1.45.0 uses xterm.js 12.8.1 (see https://xtermjs.org/).
+#
+# vttest:
+# - fixes menu 1 problem with wrapping
+# - supports DECALN
+# - fixes menu 8 problem with delete-character
+# - REP, SL/SL work
+# - keypad application mode still does not work; PF1-PF4 are not assigned.
+# - DECRQM/DECRPM do not work
+# - xterm mouse features:
+#   - SGR coordinates work; the other modes do not (see vscode #96058)
+#   - focus-events are not sent
+#   - mouse highlight tracking does not send button event
+# tack/other:
+# - little or no change since previous review
+#
 # Visual Studio Code 1.35.1 uses xterm.js (see https://xtermjs.org/).
 # https://code.visualstudio.com/docs/editor/integrated-terminal
 #
@@ -4408,7 +4468,7 @@ xterm-old|antique xterm version,
 # initially part of the xterm sources (in XFree86).  But "xterm" continued to
 # grow, while "xterm-mono" had none of the newer features.  Additionally,
 # inheriting from "xtermm" runs into several problems, including different
-# function keys as well as the fact that the mouse support is not compatible. 
+# function keys as well as the fact that the mouse support is not compatible.
 # This entry restores the original intent, intentionally not an alias to
 # simplify maintenance -TD
 xterm-mono|monochrome xterm,
@@ -4744,7 +4804,7 @@ xterm+r6f2|xterm with oldFunctionKeys and modifyFunctionKeys:2,
 #
 # This chunk is used for building the VT220/Sun/PC keyboard variants.
 xterm-basic|modern xterm terminal emulator - common,
-       OTbs, am, bce, km, mir, msgr, xenl, AX, XT,
+       OTbs, am, bce, mir, msgr, xenl, AX, XT,
        colors#8, cols#80, it#8, lines#24, pairs#64,
        acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
@@ -4760,7 +4820,7 @@ xterm-basic|modern xterm terminal emulator - common,
        is2=\E[!p\E[?3;4l\E[4l\E>, kmous=\E[M, meml=\El,
        memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
        rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>,
-       rmm=\E[?1034l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
+       rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
        rs2=\E[!p\E[?3;4l\E[4l\E>, 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}
@@ -4770,10 +4830,14 @@ xterm-basic|modern xterm terminal emulator - common,
        sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;
            %?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
        sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
-       smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m, smul=\E[4m,
-       tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3J, use=ecma+italics,
-       use=ansi+pp, use=xterm+kbs, use=xterm+alt+title,
-       use=ansi+enq,
+       smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
+       vpa=\E[%i%p1%dd, E3=\E[3J, use=ecma+italics, use=ansi+pp,
+       use=xterm+kbs, use=xterm+alt+title, use=ansi+enq,
+       use=xterm+meta,
+
+xterm+meta|meta mode for xterm,
+       km,
+       rmm=\E[?1034l, smm=\E[?1034h,
 
 # From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997
 # In retrospect, something like xterm-r6 was intended here -TD
@@ -4795,7 +4859,7 @@ xterm-16color|xterm with 16 colors like aixterm,
 
 # 256-colors is a compile-time feature of XFree86 xterm beginning with
 # xterm patch #111 (1999/7/10) -TD
-xterm+256color|xterm 256-color feature,
+xterm+256color|original xterm 256-color feature,
        ccc,
        colors#0x100, pairs#0x10000,
        initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
@@ -4807,6 +4871,19 @@ xterm+256color|xterm 256-color feature,
              ;%p1%d%;m,
        setb@, setf@,
 
+# The semicolon separator used in xterm+256color does not follow the ECMA-48
+# standard.  Since patch #282 (in 2012), xterm has supported both the legacy
+# subparameter separator (semicolon) and the standard (colon).
+#
+# The xterm FAQ gives some of the history:
+#      https://invisible-island.net/xterm/xterm.faq.html#color_by_number
+xterm+256color2|xterm 256-color feature,
+       setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48
+             \:5\:%p1%d%;m,
+       setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38\:
+             5\:%p1%d%;m,
+       use=xterm+256color,
+
 # xterm OSC 104 resets the color palette.  Using it as part of xterm+256color
 # has the drawback that some of the xterm-alikes which use that building block
 # require a different approach to rs1 -TD
@@ -4840,9 +4917,12 @@ xterm+256setaf|xterm 256-color (set-only),
 # The default color palette for the 256- and 88-colors are different.  A
 # given executable will have one palette (perhaps compiled-in).  If the program
 # supports xterm's control sequence, it can be programmed using initc.
-xterm+88color|xterm 88-color feature,
+xterm+88color|original xterm 88-color feature,
        colors#88, pairs#7744, use=xterm+256color,
 
+xterm+88color2|xterm 88-color feature,
+       colors#88, pairs#7744, use=xterm+256color2,
+
 # These variants of XFree86 3.9.16 xterm are built as a configure option.
 xterm-256color|xterm with 256 colors,
        use=xterm+osc104, use=xterm+256color, use=xterm-new,
@@ -4860,7 +4940,7 @@ xterm-88color|xterm with 88 colors,
 # for numeric capabilities provided in ncurses 6.1:
 xterm+direct2|xterm with direct-color indexing,
        RGB,
-       colors#0x1000000, pairs#0x10000,
+       colors#0x1000000, pairs#0x10000, CO#8,
        initc@, op=\E[39;49m,
        setab=\E[%?%p1%{8}%<%t4%p1%d%e48\:2\:%p1%{65536}%/%d\:%p1
              %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
@@ -4875,7 +4955,7 @@ xterm-direct2|xterm with direct-color indexing (old),
 # identifier" parameter.  This version provides for that parameter:
 xterm+direct|xterm with direct-color indexing,
        RGB,
-       colors#0x1000000, pairs#0x10000,
+       colors#0x1000000, pairs#0x10000, CO#8,
        initc@, op=\E[39;49m,
        setab=\E[%?%p1%{8}%<%t4%p1%d%e48\:2\:\:%p1%{65536}%/%d\:%p1
              %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
@@ -4914,7 +4994,7 @@ vte-direct|vte with direct-color indexing,
 nsterm-direct|nsterm with direct-color indexing,
        use=xterm+indirect, use=nsterm,
 
-# As for others:
+# As for others (commenting at the time of release for ncurses 6.1):
 # + Apple's Terminal.app does not recognize either form of the direct-color
 #   sequences.
 # + Cygwin's mintty recognizes xterm's original implementation, does okay with
@@ -4926,6 +5006,45 @@ nsterm-direct|nsterm with direct-color indexing,
 # + terminology 0.91 recognizes xterm's original implementation, but does
 #   nothing useful with it.
 
+# Reviewing after ncurses 6.2:
+# + Apple's Terminal.app is unchanged, has no support for direct color:
+#      Catalina 10.15.5 Terminal.app 2.10 (433)
+#      Mohave 10.14.6 - Terminal.app 2.9.5 (421.2)
+# + Cygwin's mintty 3.1.7 works with colon/semicolon
+# + PuTTY 0.73 works with semicolon
+# + Teraterm 4.105 works with semicolon
+# + terminology 1.7.0 works with colon/semicolon.
+
+# Other variants are possible, e.g., by using more of xterm's indexed color
+# palette, though the intrusion of indexed colors on the direct-color space
+# would be more noticeable.
+
+xterm+direct16|xterm with direct-color indexing,
+       CO#16,
+       setab=\E[%?%p1%{8}%<%t4%p1%d%e%?%p1%{16}%<%t%p1%{92}%+%e48\:
+             2\:\:%p1%{65536}%/%d\:%p1%{256}%/%{255}%&%d\:%p1%{255}
+             %&%d%;%;m,
+       setaf=\E[%?%p1%{8}%<%t3%p1%d%e%?%p1%{16}%<%t%p1%'R'%+%e38\:2
+             \:\:%p1%{65536}%/%d\:%p1%{256}%/%{255}%&%d\:%p1%{255}
+             %&%d%;%;m,
+       setb@, setf@, use=xterm+direct,
+
+xterm-direct16|xterm with direct-colors and 16 indexed colors,
+       use=xterm, use=xterm+direct16,
+
+xterm+direct256|xterm with direct-color indexing,
+       CO#0x100,
+       setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e%?
+             %p1%{256}%<%t48;5;%p1%d%e48\:2\:\:%p1%{65536}%/%d\:%p1
+             %{256}%/%{255}%&%d\:%p1%{255}%&%d%;%;m,
+       setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e%?
+             %p1%{256}%<%t38;5;%p1%d%e38\:2\:\:%p1%{65536}%/%d\:%p1
+             %{256}%/%{255}%&%d\:%p1%{255}%&%d%;%;m,
+       setb@, setf@, use=xterm+direct,
+
+xterm-direct256|xterm with direct-colors and 256 indexed colors,
+       use=xterm, use=xterm+direct256,
+
 #### XTERM Features
 
 # This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who
@@ -5052,7 +5171,7 @@ xterm-vt52|xterm emulating dec vt52,
        cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK,
        home=\EH, ht=^I, ind=\n, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
        kcuu1=\EA, nel=\r\n, ri=\EI, rmacs=\EG, smacs=\EF,
-       use=xterm+kbs,
+       use=xterm+kbs, use=vt52+keypad,
 
 xterm-noapp|xterm with cursor keys in normal mode,
        rmcup@, rmkx=\E>, smcup@, smkx=\E=, use=xterm+noapp,
@@ -5610,7 +5729,7 @@ xfce|Xfce Terminal,
 #      https://github.com/thestinger/vte-ng
 # which (based on the default branch setting) seems to be a fork of vte
 # 0.48.2, and is noted as such in Arch:
-#      https://www.archlinux.org/packages/community/x86_64/vte3-ng/
+#      https://aur.archlinux.org/packages/vte3-ng/
 # It won't be merged:
 #      https://bugzilla.gnome.org/show_bug.cgi?id=679658#c10
 #      https://bugzilla.gnome.org/show_bug.cgi?id=78291
@@ -5712,10 +5831,13 @@ kvt|KDE terminal,
 #    (also overline, which is too rarely used to provide as an extension)
 #
 # Updated for konsole 17.12.0 (late 2017):
+#
+# Re-enable "bel", since it is latent in the source-code even though KDE config
+# often hides the feature (2020/5/30)
 konsole-base|KDE console window,
        bce, km@, npc, XT,
        ncv@,
-       bel@, blink=\E[5m, civis=\E[?25l, cnorm=\E[?25h, dim=\E[2m,
+       blink=\E[5m, civis=\E[?25l, cnorm=\E[?25h, 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@,
@@ -5836,20 +5958,57 @@ konsole-256color|KDE console window with xterm 256-colors,
        use=xterm+256setaf, use=konsole,
 
 #### MLTERM
-# http://mlterm.sourceforge.net/
+# https://github.com/arakiken/mlterm
 
 mlterm|multi lingual terminal emulator,
        use=mlterm3,
 
-# Tested mlterm 3.2.2:
-# mlterm 3.x has made changes, but they are not reflected in the included
-# mlterm.ti; this entry is based on testing with ncurses, tack and vttest -TD
-# 2018/01/21: found xterm+sm+1006 did not work with version 3.3.8
+# Tested mlterm 3.9.0 (2020/09/19):
+# ncurses:
+# - has blinking text
+# - has italics
+# - has invisible-text
+# tack:
+# - has crossed-out text
+# - does not support palette reset with OSC 104
+# - testing the function-keys is difficult because the terminal is
+#   preconfigured to set many of the modified keys to special functions, e.g.,
+#   - shift-F1 and shift-F2 are bound to a split-screen feature
+#   - control-F1 and control-F2 is bound to a new-terminal feature
+# vttest:
+# - primary response says it is a VT340 (ReGIS and Sixel).
+# - has partial support for double-size characters.
+# - character-set tests do not work.
+# - DEC locator works.
+# - 1006-mouse works.
+# - focus-events do not work reliably.
+# - numeric keypad escapes do not work.
+# - back-color erase works
+# other:
+# - title-stack works.
+# - doesn't respond to 8-bit controls.
+# - 256-color palette initializing works.
+# - DECSTR soft-reset is documented.
+#
+# Tested mlterm 3.3.8 (2018/01/21):
+# found xterm+sm+1006 did not work with version 3.3.8
+# soft-reset DECSTR is in sources since 2017/09/19.
+#
+# Tested mlterm 3.2.2 (2014/03/22):
+# mlterm 3.x made further changes, but they were not reflected in the included
+# mlterm.ti (which was dropped in 2015).  This entry has been based on testing
+# with ncurses, tack and vttest -TD
 mlterm3|multi lingual terminal emulator,
+       bce, AX,
+       blink=\E[5m, invis=\E[8m, is2=\E[!p\E[?3;4l\E>,
        kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
-       use=ecma+italics, use=xterm+app, use=xterm+pcf0,
-       use=xterm+pcc2, use=xterm+pce2, use=xterm+x11mouse,
-       use=mlterm2,
+       rs2=\E[!p\E[?3;4l\E>,
+       sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;%?
+           %p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
+       use=ansi+enq, use=ansi+rep, use=ecma+italics,
+       use=ecma+strikeout, use=xterm+app, use=xterm+pcf2,
+       use=xterm+pcc2, use=xterm+pce2, use=xterm+meta,
+       use=xterm+alt+title, use=xterm+sm+1006, use=mlterm2,
 
 # This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD
 #
@@ -6891,6 +7050,7 @@ terminology|EFL-based terminal emulator,
 
 #### Alacritty
 # https://github.com/jwilm/alacritty
+# Version 0.6.0 (2020/11/25)
 # Version 0.4.0 (2019/11/25)
 # Version 0.3.3 (2019/08/03)
 # Version 0.2.1 (2018/10/03)
@@ -6950,14 +7110,14 @@ alacritty-direct|alacritty with direct color indexing,
 alacritty+common|base fragment for alacritty,
        km@, npc,
        kb2=\EOE, kbs=^?, kcbt=\E[Z, kent=\EOM, Se=\E[0 q,
-       use=ecma+index, use=xterm+sm+1006, use=xterm-basic,
-       use=xterm+app, use=ansi+rep, use=xterm+tmux,
-       use=ecma+strikeout, use=xterm+sl-twm, use=ecma+italics,
-       use=xterm+pce2, use=xterm+pcc2, use=xterm+pcf2,
+       Smulx=\E[4\:%p1%dm, use=ecma+index, use=xterm+sm+1006,
+       use=xterm-basic, use=xterm+app, use=ansi+rep,
+       use=xterm+tmux, use=ecma+strikeout, use=xterm+sl-twm,
+       use=ecma+italics, use=xterm+pce2, use=xterm+pcc2,
+       use=xterm+pcf2,
 
 #### Kitty
 # https://github.com/kovidgoyal/kitty
-# Version 0.13.3
 # Project started in 2016/10 (see alacritty), but is a Python script rather
 # than Rust, using OpenGL.  The same caveats regarding remote connections
 # apply.  This is not an X terminal, though (like alacritty), it copies
@@ -6972,6 +7132,23 @@ alacritty+common|base fragment for alacritty,
 #      http://lists.gnu.org/archive/html/bug-ncurses/2018-09/msg00005.html
 #      https://github.com/kovidgoyal/kitty/issues/879
 #
+# Version 0.19.1
+# changes since 0.13.3:
+# vttest
+#      ISO-6429
+#              REP works, though using unspecified behavior
+#      xterm
+#              xterm's SGR-mouse mode is recognized.
+#              does recognize original alternate-screen
+#              bug: mouse focus in/out does not work.
+#              bug: X10 mouse mode responds like any-event
+#              bug: highlight-tracking does not work; terminal hangs.
+#
+# tack
+#      rs1 adds an empty string for resetting title- and other OSC-strings.
+#      italics work
+#
+# Version 0.13.3
 # Notes:
 #      initial screensize 71x22
 #      does not respond to "resize -s"
@@ -7061,17 +7238,18 @@ kitty+common|KovId's TTY common properties,
        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, kmous=\E[M,
-       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=\Ec, sc=\E7,
+       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,
        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,
        smkx=\E[?1h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-       vpa=\E[%i%p1%dd, use=ecma+index, use=xterm+sl-twm,
-       use=ecma+strikeout, use=xterm+pce2, use=xterm+pcc2,
-       use=ecma+italics, use=xterm+alt1049,
+       vpa=\E[%i%p1%dd, use=ansi+rep, use=xterm+sm+1006,
+       use=ecma+index, use=xterm+sl-twm, use=ecma+strikeout,
+       use=xterm+pce2, use=xterm+pcc2, use=ecma+italics,
+       use=xterm+alt1049,
 
 ######## WEB CLIENTS
 
@@ -7313,6 +7491,7 @@ screen|VT 100/ANSI X3.64 virtual terminal,
        sgr0=\E[m\017, smacs=^N, smir=\E[4h, smkx=\E[?1h\E=,
        smso=\E[3m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
        E0=\E(B, S0=\E(%p1%c, use=xterm+alt1049, use=ecma+color,
+       use=vt100+enq,
 # The bce and status-line entries are from screen 3.9.13 (and require some
 # changes to .screenrc).
 screen-bce|VT 100/ANSI X3.64 virtual terminal with bce,
@@ -7453,10 +7632,10 @@ screen.konsole|screen in KDE console window,
        use=xterm+x11mouse, use=screen+italics,
        use=screen+fkeys, use=konsole,
 # fix the backspace key
-screen.linux|screen in linux console,
+screen.linux|screen.linux-s|screen in linux console,
        bw,
-       kbs=^?, kcbt@, use=xterm+x11mouse, use=screen+fkeys,
-       use=screen4,
+       kbs=^?, kcbt@, use=linux+sfkeys, use=xterm+x11mouse,
+       use=screen+fkeys, use=screen4,
 screen.mlterm|screen in mlterm,
        use=xterm+x11mouse, use=screen+fkeys, use=mlterm,
 screen.putty|screen in putty,
@@ -7565,7 +7744,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, rmso=\E[27m,
+       invis=\E[8m, kbs=^?, 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,
@@ -7576,6 +7755,11 @@ tmux|tmux terminal multiplexer,
 tmux-256color|tmux with 256 colors,
        use=xterm+256setaf, use=tmux,
 
+tmux-direct|tmux with direct-color indexing,
+       setal=\E[%?%p1%{8}%<%t5%p1%d%e58\:2\:\:%p1%{65536}%/%d\:%p1
+             %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
+       use=xterm+direct, use=tmux,
+
 #### Dvtm
 
 # dvtwm 0.15
@@ -8596,7 +8780,7 @@ uwin|U/Win 3.2 console,
 # variables may be permanently set in the Control Panel\System applet.
 #
 # You can find out more about the restrictions of this facility at
-# <http://www.nentug.org/unix-to-nt/ntposix.htm>.
+# <https://jeffpar.github.io/kbarchive/kb/108/Q108581/>
 #
 # From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997
 ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode,
@@ -9451,7 +9635,7 @@ gator|HP 9000 model 237 emulating AAA,
        rep=%p1%c\E[%p2%db$<1*/>, rev=\E[7m, rmso=\E[m,
        rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
 gator-52|HP 9000 model 237 emulating VT52,
-       cols#128, lines#47, use=vt52,
+       cols#128, lines#47, use=vt52-basic,
 gator-52t|HP 9000 model 237 emulating extra-tall VT52,
        lines#94, use=gator-52,
 
@@ -10173,6 +10357,7 @@ tvi912cc|tvi912 at cowell college,
 #
 # Someone has put a scanned copy of the manual online at:
 #     http://vt100.net/televideo/912b-om/
+#     (https://vt100.net/manx/details/6,5484)
 #
 # These terminals were produced ca. 1979, and had a 12" monochrome
 # screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit
@@ -14383,8 +14568,8 @@ aaa+rv|ann arbor ambassador in reverse video,
        blink=\E[5;7m, bold=\E[1;7m, invis=\E[7;8m,
        is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m,
        rs1=\E[H\E[7m\E[J$<156>,
-       sgr=\E[%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p1%p2%|%p3%!%t7;
-           %;%?%p7%t8;%;m\016,
+       sgr=\E[%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p1%p2%|%p3%!%|%t7
+           ;%;%?%p7%t8;%;m\016,
        sgr0=\E[7m\016, smso=\E[m, smul=\E[4;7m,
 # Ambassador with the DEC option, for partial vt100 compatibility.
 aaa+dec|ann arbor ambassador in dec vt100 mode,
@@ -15982,9 +16167,9 @@ d220-dg|Data General DASHER D220 color terminal in DG mode,
 d230c|d230|Data General DASHER D230C,
        blink=\E[5;50m, bold=\E[4;7;50m, dim=\E[2;50m, nel=\r\n,
        rev=\E[7;50m, rmkx=\E[2;1v, rmso=\E[50m, rmul=\E[50m,
-       sgr=\E[50%?%p1%p3%|%p6%|%t;7%{1}%e%{0}%;%PR%?%p4%t;5%{1}%e
-           %{0}%;%PB%?%p2%p6%|%t;4%{1}%e%{0}%;%PU%?%p1%p5%|%t;2%{1}
-           %e%{0}%;%PDm\E)%?%p9%t6\016%e4\017%;,
+       sgr=\E[%?%p1%p3%|%p6%|%t7;%{1}%e%{0}%;%PR%?%p4%t5;%{1}%e%{0}
+           %;%PB%?%p2%p6%|%t4;%{1}%e%{0}%;%PU%?%p1%p5%|%t2;%{1}%e
+           %{0}%;%PD50m\E)%?%p9%t6\016%e4\017%;,
        sgr0=\E[50m\E)4\017, smkx=\E[2;0v, smso=\E[2;7;50m,
        smul=\E[4;50m, use=dgkeys+7b, use=d220,
 
@@ -16983,8 +17168,8 @@ hz1520-noesc|hazeltine 1520,
 # Be sure the auto lf/cr switch is set to cr.
 hz1552|hazeltine 1552,
        OTbs,
-       cud1=\n, dl1=\EO, il1=\EE, kf1=\EP, kf2=\EQ, kf3=\ER, lf1=blue,
-       lf2=red, lf3=green, use=vt52,
+       cud1=\n, dl1=\EO, il1=\EE, lf1=blue, lf2=red, lf3=green,
+       use=vt52,
 hz1552-rv|hazeltine 1552 reverse video,
        cud1=\n, rmso=\ET, smso=\ES, use=hz1552,
 # Note: h2000 won't work well because of a clash between upper case and ~'s.
@@ -17224,12 +17409,12 @@ ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display,
        use=ibmega-c,
 ibm6154|IBM 6154 Color displays,
        blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m,
-       sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1
+       sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p7%t;8%;%?%p6%t;1
            2%;m,
        sgr0=\E[0;10m, use=ibm5154,
 ibm6153|IBM 6153 Black & White display,
        blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m,
-       sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1
+       sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p7%t;8%;%?%p6%t;1
            2%;m,
        sgr0=\E[0;10m, use=ibm5151,
 ibm6153-90|IBM 6153 Black & White display,
@@ -17677,8 +17862,8 @@ icl6404|kds7372|icl6402|kds6402|ICL 6404 aka Kokusai Display Systems 7372,
        OTbs, am, hs,
        cols#80, lines#24,
        bel=^G, blink=\E[2ZZ, cbt=\EI, civis=\E.0, clear=\E*,
-       cnorm=\E.3, cr=\r, csr=\E!%+%p1%{32}%+%p2%{32}, cub1=^H,
-       cud1=^V, cuf1=^L,
+       cnorm=\E.3, cr=\r, csr=\E!%p1%{32}%+%c%p2%{32}%+%c,
+       cub1=^H, cud1=^V, cuf1=^L,
        cup=\E=%p1%{32}%+%c%p2%{80}%m%{32}%+%c%p2%{80}%>%{32}%+%c,
        cuu1=^K, cvvis=\E.1, dch1=\EW, dl1=\ER, home=^^, ht=^I,
        hts=\E1, il1=\EE, invis=\E[1ZZ,
@@ -18835,7 +19020,7 @@ ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal,
            B\E)0\E%/0n\E[P\031$<200>,
        sc=\E7,
        sgr=%?%p9%t\016%e\017%;\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1
-           %p3%|%t;7%;%?%p4%t;5%;m$<100>,
+           %p3%|%t;7%;%?%p4%t;5%;m$<120>,
        sgr0=\017\E[0m$<120>, smacs=\016$<90>, smir=\E[4h$<80>,
        smso=\E[7m$<30>, smul=\E[4m$<30>, tbc=\E[3g$<40>,
        tsl=\E[>+1$<70>,
@@ -18981,8 +19166,8 @@ ndr9500|nd9500|Newbury Data 9500,
        kf21=^Ai\r, kf22=^Aj\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r,
        kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^,
        kich1=\EQ, kil1=\EE, kprt=\EP, mc4=\Ea, mc5=\E`, nel=^_,
-       pfloc=\E|%{48}%p1%+%c2%p2\031,
-       pfx=\E|%{48}%p1%+%c1%p2\031, prot=\E), ri=\Ej,
+       pfloc=\E|%{48}%p1%+%c2%p2%s\031,
+       pfx=\E|%{48}%p1%+%c1%p2%s\031, prot=\E), ri=\Ej,
        rmacs=\E%%, rmir=\Er, rmso=\E(, rmxon=^N,
        sgr=\EG0\E%%%%\E(%?%p1%p5%p8%|%|%t\E)%;%?%p9%t\E$%;,
        sgr0=\EG0\E%%\E(, smacs=\E$, smir=\Eq, smso=\E), smxon=^O,
@@ -19449,6 +19634,13 @@ tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109,
        smkx=\E[?1h\E=, smso=\E[7;42m, smul=\E[4m, tbc=\E[3g,
        use=ecma+index,
 
+# Refer to:
+# TEK Programmer's Reference
+# Part No. 070-4893-00
+# Product Group 18
+# 4107/4109 Computer Display Terminal
+# November 1983
+#
 # Tektronix 4107/4109 interpret 4 modes using "\E%!" followed by a code:
 # 0 selects Tek mode, i.e., \E%!0
 # 1 selects ANSI mode
@@ -19457,7 +19649,9 @@ tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109,
 #
 # One odd thing about the description (which has been unchanged since the 90s)
 # is that the cursor addressing is using VT52 mode, and a few others use the
-# VT52's non-CSI versions of ANSI, e.g., \EJ.
+# VT52's non-CSI versions of ANSI, e.g., \EJ.  A possible explanation is that
+# the developer used Emacs, which misuses cvvis (this description sets VT52
+# mode in that capability).
 tek4107|tek4109|tektronix terminals 4107 4109,
        OTbs, am, mir, msgr, ul, xenl, xt,
        cols#79, it#8, lines#29,
@@ -20786,7 +20980,6 @@ linux-m1|Linux Minitel 1 "like" Couleurs,
        rs1=\Ec, rs3=\E[37;40m\E[8], sc=\E7, setab=\E[4%p1%dm,
        setaf=\E[3%p1%dm, sgr0=\E[m, smacs=^N, smam=\E[?7h,
        smir=\E[4h, smpch=\E[11m, smso=\E[7m, tbc=\E[3g,
-       u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?6c, u9=\EZ,
        vpa=\E[%i%p1%dd, .VN=\E[?5l, .VR=\E[?5h, .am@,
        .ich=\E[%p1%d@, .ich1=\E[@, .ll=\E[99H, .rmcup=,
        .rmul=\E[24m, .smcup=\E]R\E]P3FFFF80\E[?8c,
@@ -20799,6 +20992,7 @@ linux-m1|Linux Minitel 1 "like" Couleurs,
           \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,
+       use=linux+decid,
 
 # 1. Using double-shapes for vt100 graphical chars (eg: mc).
 # 2. Native brown color corrected to good yellow color.
@@ -20841,6 +21035,17 @@ linux-m2|Linux Minitel 2 "like" Couleurs (Vert/Blanc/Noir+Bleu),
               \E]PFFFFFFF\E[;37m,
        use=linux-m1,
 
+# From: Alexandre Montaron, 27 May 2020
+linux-s|Linux Console with added status line at bottom,
+       hs,
+       clear=\E[255;255H\E[A\E[1J\E[H, csr@,
+       dsl=\E7\E[255H\E[K\E8, ed@, fsl=\E8,
+       iprog=\sbash\s-c\s'echo\s-ne\s"\E[?6l\E[255H\E[A\E[6n"\s;
+             \sread\s-d\sR\sTMP\s;\sLINES=`echo\s$TMP\s|\scut\s-f1
+             \s-d\s";"\s|\scut\s-f2\s-d\s"["`\s;\sstty\srows\s$LINE
+             S\s;\secho\s-ne\s"\E[;"$LINES"r\E[J"',
+       rs1=\E]R, tsl=\E7\E[255;%p1%dH, .rc@, .sc@, use=linux,
+
 # Screen entries counterpart :
 
 screen.linux-m1|Linux m1 specific for screen,
@@ -20875,16 +21080,16 @@ putty-m1|Putty Minitel 1 "like" Couleurs,
        dim@, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
        kf5=\E[15~, rmcup=\E[2J\E[?47l\E8, rmul=\E[24m,
        smcup=\E7\E[?47h, smul=\E[4m, .E3=\E[300S,
-       .WS=\E[8;%d;%dt, Z0=\E[?3h, Z1=\E[?3l, use=xterm+sl-twm,
-       use=ecma+index, use=linux-m1,
+       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~, rmcup=\E[2J\E[?47l\E8, rmul=\E[24m,
        smcup=\E7\E[?47h, smul=\E[4m, .E3=\E[300S,
-       .WS=\E[8;%d;%dt, Z0=\E[?3h, Z1=\E[?3l, use=xterm+sl-twm,
-       use=ecma+index, use=linux-m1b,
+       use=putty+screen, use=xterm+sl-twm, use=ecma+index,
+       use=linux-m1b,
 
 putty-m2|Putty Minitel 2 "like" Couleurs (Vert/Blanc/Noir),
        hs,
@@ -20893,8 +21098,14 @@ putty-m2|Putty Minitel 2 "like" Couleurs (Vert/Blanc/Noir),
        dim@, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
        kf5=\E[15~, rmcup=\E[2J\E[?47l\E8, rmul=\E[24m,
        smcup=\E7\E[?47h, smul=\E[4m, .E3=\E[300S,
-       .WS=\E[8;%d;%dt, Z0=\E[?3h, Z1=\E[?3l, use=xterm+sl-twm,
-       use=ecma+index, use=linux-m2,
+       use=putty+screen, use=xterm+sl-twm, use=ecma+index,
+       use=linux-m2,
+
+putty+screen|PuTTY with screen resizing extensions,
+       .WS=\E[8;%p1%d;%p2%dt, Z0=\E[?3h, Z1=\E[?3l,
+
+putty-screen|PuTTY with screen resizing extensions,
+       WS=\E[8;%p1%d;%p2%dt, Z0=\E[?3h, Z1=\E[?3l, use=putty,
 
 screen.putty-m1|Putty m1 specific for screen,
        dim@, rmul=\E[24m, smul=\E[4m, E3@, use=screen.linux-m1,
@@ -21693,11 +21904,41 @@ dp8242|datapoint 8242,
 
 #### DEC terminals (Obsolete types: DECwriter and vt40/42/50)
 #
-# These entries are DEC's official terminfos for its older terminals.
-# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support
-# Engineering for more information.  Updated terminfos and termcaps
-# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
+# These entries came from DEC's official terminfos for its older terminals
+# (which happen to be identical to the AT&T/SCO terminal descriptions),
+# Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support Engineering
+# may have had more information.  Updated terminfos and termcaps were available
+# at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
+
+# DEC's terminfos did not describe the auxiliary keypad.
 #
+# DECScope of course had no "function keys", but this building block assigns
+# the three blank keys at the top of the auxiliary (numeric) keypad, using
+# the same analogy as vt100 (also lacking function-keys).
+#
+# These assignments use the same layout for 0-9 as vt100+keypad; the vt52
+# keypad had its cursor-keys on the right-column as shown -TD
+#   _______________________________________
+#  |   PF1   |   PF2   |   PF3   | c-up    |
+#  |   \EP   |   \EQ   |   \ER   |   \EA   |
+#  |_kf1__k1_|_kf2__k2_|_kf3__k3_|kcuu1_k4_|
+#  |    7         8         9      c-down  |
+#  |   \E?w  |   \E?x  |   \E?y  |   \EB   |
+#  |_kf9__k9_|_kf10_k;_|_kf0__k0_|kcud1____|
+#  |    4    |    5    |    6    | c-right |
+#  |   \E?t  |   \E?u  |   \E?v  |   \EC   |
+#  |_kf5__k5_|_kf6__k6_|_kf7__k7_|kcuf1_k8_|
+#  |    1    |    2    |    3    | c-left  |
+#  |   \E?q  |   \E?r  |   \E?s  |   \ED   |
+#  |_ka1__K1_|_kb2__K2_|_ka3__K3_|kcub1____|
+#  |         0         |   .     |  enter  |
+#  |        \E?p       |  \E?n   |  \E?M   |
+#  |___kc1_______K4____|_kc3__K5_|_kent_@8_|
+#
+vt52+keypad|DECScope auxiliary keypad,
+       ka1=\E?q, ka3=\E?s, kb2=\E?r, kc1=\E?p, kc3=\E?n, kf0=\E?y,
+       kf1=\EP, kf2=\EQ, kf3=\ER, kf5=\E?t, kf6=\E?u, kf7=\E?v,
+       kf8=\E?w, kf9=\E?x,
 
 gt40|dec gt40,
        OTbs, os,
@@ -21707,17 +21948,17 @@ gt42|dec gt42,
        OTbs, os,
        cols#72, lines#40,
        bel=^G, cr=\r, cub1=^H, cud1=\n,
+
 vt50|dec vt50,
        OTbs,
        cols#80, lines#12,
        bel=^G, clear=\EH\EJ, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
-       cuu1=\EA, ed=\EJ, el=\EK, ht=^I, ind=\n,
+       cuu1=\EA, ed=\EJ, el=\EK, ht=^I, ind=\n, u8=\E/A, u9=\EZ,
 vt50h|dec vt50h,
-       OTbs,
-       cols#80, lines#12,
-       bel=^G, clear=\EH\EJ, cr=\r, cub1=^H, cud1=\n, cuf1=\EC,
-       cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
-       el=\EK, ht=^I, ind=\n, ri=\EI,
+       cub1=\ED, cud1=\EB, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
+       kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, u8=\E/[HJ],
+       use=vt52+keypad, use=vt50,
+
 # (vt61: there's a BSD termcap that claims <dl1=\EPd>, <il1=\EPf.> <kbs=^H>)
 vt61|vt-61|vt61.5|dec vt61,
        cols#80, lines#24,
@@ -22687,7 +22928,7 @@ ti916|ti916-220-7|Texas Instruments 916 VDT 8859/1 vt220 mode 7 bit CTRL,
        da, db, in, msgr,
        cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[2J$<6>,
        cnorm=\E[?25h, cub=\E[%p1%dD, cud=\E[%p1%dB,
-       cuf=\E[%p1%dC, cup=\E[%p1%i%p1%d;%p2%dH, cuu=\E[%p1%dA,
+       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>,
@@ -24502,6 +24743,8 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 #    This was implemented for the Hurd.
 # rmxx/smxx describes the ECMA-48 strikeout/crossed-out attributes, as an
 #    experimental feature of tmux.
+# CO gives the number of indexed ("ANSI") colors which overlay an RGB color
+#    space.
 # E3 clears the terminal's scrollback buffer.  This was implemented in the
 #    Linux 3.0 kernel as a security feature.  It matches a feature which was
 #    added in xterm patch #107.
@@ -26429,10 +26672,79 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 #
 # 2020-01-12
 #      + update alacritty entries for 0.4.0 (prompted by patch by
-#        Christian Durr) -TD
+#        Christian Duerr) -TD
 #
 # 2020-01-18
 #      + spelling fixes per codespell -TD
 #      + improve xm example for xterm+x11mouse, xterm+sm+1006 -TD
 #
+# 2020-02-22
+#      + improve vt50h and vt52 based on DECScope manual -TD
+#      + add/use vt52+keypad and vt52-basic -TD
+#
+# 2020-04-18
+#      + use vt52+keypad in xterm-vt52, from xterm #354 -TD
+#
+# 2020-04-25
+#      + use vt100+fnkeys in putty -TD
+#
+# 2020-05-02
+#      + add details on the change to Linux SGR 21 in 2018 -TD
+#      + add xterm-direct16 and xterm-direct256 -TD
+#
+# 2020-05-03
+#      + fix some dead URLs -TD
+#
+# 2020-05-16
+#      + update notes on vscode / xterm.js -TD
+#
+# 2020-05-30
+#      + re-enable "bel" in konsole-base (report by Nia Huang)
+#      + add linux-s entry (patch by Alexandre Montaron).
+#
+# 2020-06-06
+#      + add xterm+256color2, xterm+88color2, to deprecate nonstandard usage
+#        in xterm+256color, xterm+88color -TD
+#      + add shifted Linux console keys in linux+sfkeys entry for
+#        screen.linux (report by Alexandre Montaron).
+#      + use vt100+enq in screen (report by Alexandre Montaron).
+#      + add screen.linux-s alias (suggested by Alexandre Montaron).
+#
+# 2020-07-11
+#      + fix pound-sign mapping in acsc of linux2.6 entry (report by Ingo
+#        Bruckl).
+#
+# 2020-08-28
+#      + correct icl6404 csr (report by Florian Weimer).
+#      + correct ti916 cup (report by Florian Weimer).
+#      + improve ndr9500 (report by Florian Weimer).
+#
+# 2020-09-05
+#      + correct description of vt330/vt340 (Ross Combs).
+#
+# 2020-09-19
+#      + update mlterm3 for 3.9.0 (report by Premysl Eric Janouch).
+#
+# 2020-09-29
+#      + add tmux-direct (tmux #2370)
+#      + simplify mlterm initialization with DECSTR -TD
+#      + change tmux's kbs to ^? (report by Premysl Eric Janouch)
+#
+# 2020-10-10
+#      + correct sgr in aaa+rv (report by Florian Weimer) -TD
+#      + fix some sgr inconsistencies in d230c, ibm6153, ibm6154,
+#        ncrvt100an -TD
+#
+# 2020-10-17
+#      + expanded notes about tek4107 -TD
+#
+# 2020-11-07
+#      + update kitty+common -TD
+#      + add putty+screen and putty-screen (suggested by Alexandre Montaron).
+#
+# 2020-11-28
+#      + add Smulx to alacritty (Christian Duerr).
+#      + add rep to PuTTY -TD
+#      + add putty+keypad -TD
+#
 ######## SHANTIH!  SHANTIH!  SHANTIH!