]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - misc/terminfo.src
ncurses 5.9 - patch 20120421
[ncurses.git] / misc / terminfo.src
index 75fd69e41657b4ce42f6b6bb12938197e1544f7f..97af71dfd1859285b99f8268c283fe6ab6fcba78 100644 (file)
@@ -6,8 +6,8 @@
 # Report bugs and new terminal descriptions to
 #      bug-ncurses@gnu.org
 #
-#      $Revision: 1.426 $
-#      $Date: 2012/02/11 23:38:27 $
+#      $Revision: 1.437 $
+#      $Date: 2012/04/21 19:07:11 $
 #
 # 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
@@ -376,11 +376,19 @@ ansi+sgrdim|ansi graphic renditions; assuming terminal has dim; not bold,
        dim=\E[2m,
        sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t2;%;%?%p7%t8;%;m,
        use=ansi+sgr, use=ansi+sgrso, use=ansi+sgrul,
-ansi+pp|ansi printer port,
-       mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
 ansi+csr|ansi scroll-region plus cursor save & restore,
        csr=\E[%i%p1%d;%p2%dr, rc=\E8, sc=\E7,
 
+# The normal (ANSI) flavor of "media copy" building block asserts that
+# characters sent to the printer do not echo on the screen. DEC terminals
+# can also be put into autoprinter mode, where each line is sent to the
+# printer as you move off that line, e.g., by a carriage return.
+ansi+pp|ansi printer port,
+       mc5i,
+       mc0=\E[i, mc4=\E[4i, mc5=\E[5i,
+dec+pp|DEC autoprinter mode,
+       mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i,
+
 # The IBM PC alternate character set.  Plug this into any Intel console entry.
 # We use \E[11m for rmacs rather than \E[12m so the <acsc> string can use the
 # ROM graphics for control characters such as the diamond, up- and down-arrow.
@@ -488,7 +496,7 @@ ansi-mini|any ansi terminal with pessimistic assumptions,
 # ansi-mtabs adds relative addressing and minimal tab support
 ansi-mtabs|any ansi terminal with pessimistic assumptions,
        it#8,
-       ht=^I, use=ansi+local1, use=ansi-mini,
+       ht=^I, use=ansi-mini, use=ansi+local1,
 
 # ANSI X3.64 from emory!mlhhh (Hugh Hansard) via BRL
 #
@@ -942,6 +950,8 @@ linux2.2|linux 2.2.x console,
 #      http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html
 # Using SI/SO has the drawback that it confuses screen.  SCS would work.
 # However, SCS is buggy (see comment in Debian #515609) -TD
+# Further, this breaks longstanding workarounds for Linux console's line
+# drawing (see Debian 665959) -TD
 linux2.6|linux 2.6.x console,
        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%;,
@@ -953,7 +963,7 @@ linux3.0|linux 3.0 kernels,
 
 # This is Linux console for ncurses.
 linux|linux console,
-       use=linux3.0,
+       use=linux2.2,
 
 # Subject: linux 2.6.26 vt back_color_erase
 # Changes to the Linux console driver broke bce model as reported in
@@ -2460,8 +2470,9 @@ vt132|DEC vt132,
 # with the key marked (ESC) on the vt220.  See vt220d for an alternate mapping.
 # PF1--PF4 are used as F1--F4.
 #
+# added msgr -TD
 vt220-old|vt200-old|DEC VT220 in vt100 emulation mode,
-       OTbs, OTpt, am, mir, xenl, xon,
+       OTbs, OTpt, am, mir, msgr, xenl, xon,
        cols#80, lines#24, vt#3,
        OTnl=^J,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -2488,7 +2499,7 @@ vt220-old|vt200-old|DEC VT220 in vt100 emulation mode,
 # changed rmacs/smacs from shift-in/shift-out to vt200-old's explicit G0/G1
 # designation to accommodate bug in pcvt -TD
 vt220|vt200|dec vt220,
-       OTbs, am, mc5i, mir, msgr, xenl, xon,
+       OTbs, am, mir, msgr, xenl, xon,
        cols#80, it#8, lines#24, vt#3,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
@@ -2507,13 +2518,12 @@ vt220|vt200|dec vt220,
        kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, kf7=\E[18~,
        kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~,
        kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~,
-       lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[i, mc4=\E[4i,
-       mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM,
-       rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, rmso=\E[27m,
-       rmul=\E[24m, rs1=\E[?3l, sc=\E7,
+       lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, nel=\EE, rc=\E8, rev=\E[7m,
+       ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l,
+       rmso=\E[27m, rmul=\E[24m, rs1=\E[?3l, sc=\E7,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>,
        sgr0=\E[m\E(B, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h,
-       smso=\E[7m, smul=\E[4m, tbc=\E[3g,
+       smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=ansi+pp,
 vt220-w|vt200-w|DEC vt220 in wide mode,
        cols#132,
        rs3=\E[?3h, use=vt220,
@@ -2578,8 +2588,9 @@ vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins,
 #
 # From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996
 # (Added vt100 <rc>,<sc> to quiet a tic warning -- esr)
+# added msgr -TD
 vt200-js|vt220-js|dec vt200 series with jump scroll,
-       am,
+       am, msgr,
        cols#80,
        bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
        cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
@@ -2636,8 +2647,7 @@ vt320|vt300|dec vt320 7 bit terminal,
        kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
        kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
        kf9=\E[20~, khome=\E[1~, kich1=\E[2~, knp=\E[6~, knxt=^I,
-       kpp=\E[5~, kprv=\E[Z, kslt=\E[4~, mc0=\E[i, mc4=\E[?4i,
-       mc5=\E[?5i, nel=\EE, rc=\E8, rev=\E[7m,
+       kpp=\E[5~, kprv=\E[Z, kslt=\E[4~, nel=\EE, rc=\E8, rev=\E[7m,
        rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B,
        rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m,
        rmul=\E[m,
@@ -2646,7 +2656,7 @@ vt320|vt300|dec vt320 7 bit terminal,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>,
        sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
        smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-       tsl=\E[1$}\E[H\E[K, use=vt220+keypad,
+       tsl=\E[1$}\E[H\E[K, use=dec+pp, use=vt220+keypad,
 vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy,
        am@,
        is2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H,
@@ -2760,29 +2770,34 @@ vt400|vt400-24|dec-vt400|dec vt400 24x80 column autowrap,
 
 # (vt420: I removed <kf0>, it collided with <kf10>.  I also restored
 # a missing <sc> -- esr)
+# add msgr and other capabilities from vt220 -TD
 vt420|DEC VT420,
-       am, mir, xenl, xon,
-       cols#80, lines#24, vt#3,
+       am, mir, msgr, xenl, xon,
+       cols#80, it#8, lines#24, vt#3,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
        clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-       cub1=^H, cud1=\E[B, cuf1=\E[C,
-       cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P,
-       dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I,
-       if=/usr/share/tabset/vt300, il1=\E[L, ind=\ED,
-       is2=\E[1;24r\E[24;1H, is3=\E[?67h\E[64;1"p, kbs=^H,
-       kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-       kdch1=\E[3~, kf1=\EOP, kf10=\E[29~, kf2=\EOQ, kf3=\EOR,
-       kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~, kf8=\E[20~,
-       kf9=\E[21~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-       kslt=\E[4~, rc=\E8, rev=\E[7m$<2>,
-       rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B$<4>,
-       rmam=\E[?7l, rmir=\E[4l, rmkx=\E>,
+       cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
+       cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH$<10>,
+       cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
+       dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J$<50>,
+       el=\E[K$<3>, el1=\E[1K, enacs=\E)0,
+       flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I, hts=\EH,
+       ich=\E[%p1%d@, if=/usr/share/tabset/vt300,
+       il=\E[%p1%dL, il1=\E[L, ind=\ED, is2=\E[1;24r\E[24;1H,
+       is3=\E[?67h\E[64;1"p, kbs=^H, kcub1=\E[D, kcud1=\E[B,
+       kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, kf10=\E[29~,
+       kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[17~, kf6=\E[18~,
+       kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, kfnd=\E[1~,
+       kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, nel=\EE,
+       rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300,
+       ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>,
        rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-       rmso=\E[m, rmul=\E[m, rs3=\E[?67h\E[64;1"p, sc=\E7,
+       rmso=\E[27m, rmul=\E[24m, rs3=\E[?67h\E[64;1"p, sc=\E7,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>,
-       sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h,
-       smkx=\E=, smso=\E[7m, smul=\E[4m,
+       sgr0=\E[m\E(B$<2>, smacs=\E(0$<2>, smam=\E[?7h,
+       smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
+       use=ansi+pp,
 
 # DEC VT220 and up support DECUDK (user-defined keys).  DECUDK (i.e., pfx)
 # takes two parameters, the key and the string.  Translating the key is
@@ -2856,8 +2871,9 @@ vt510pcdos|DEC VT510 w/PC for DOS Merge,
 # assigned to an unknown key, Set-Up may be entered by pressing
 # [F3] as the first key after power up, regardless of keyboard type.
 # (vt520: I added <rmam>/<smam> based on the init string, also <sc> -- esr)
+# added msgr -TD
 vt520|DEC VT520,
-       am, mir, xenl, xon,
+       am, mir, msgr, xenl, xon,
        cols#80, lines#24, vt#3,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
@@ -2883,8 +2899,9 @@ vt520|DEC VT520,
 
 # (vt525: I added <rmam>/<smam> based on the init string;
 # removed <rmso>=\E[m, <rmul>=\E[m, added <sc> -- esr)
+# added msgr -TD
 vt525|DEC VT525,
-       am, mir, xenl, xon,
+       am, mir, msgr, xenl, xon,
        cols#80, lines#24, vt#3,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
@@ -3289,7 +3306,7 @@ xterm-r6|xterm-old|xterm X11R6 version,
 # This is the base xterm entry for the xterm supplied with XFree86 3.2 & up.
 # The name has been changed and some aliases have been removed.
 xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
-       OTbs, am, bce, km, mir, msgr, xenl,
+       OTbs, am, bce, km, mir, msgr, xenl, XT,
        cols#80, it#8, lines#24, ncv@,
        acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
@@ -3333,13 +3350,13 @@ xterm-xf86-v33|xterm terminal emulator (XFree86 3.3 Window System),
 # xterm to use terminfo-based descriptions with the titeInhibit resource.
 # -- the distribution contained incorrect khome/kend values -TD
 xterm-xf86-v333|xterm terminal emulator (XFree86 3.3.3 Window System),
-       mc5i,
        blink=\E[5m, ich1@, invis=\E[8m,
        is2=\E[!p\E[?3;4l\E[4l\E>, kdch1=\E[3~, kfnd@, kslt@,
-       mc0=\E[i, mc4=\E[4i, mc5=\E[5i, rmcup=\E[?1047l\E[?1048l,
-       rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>,
+       rmcup=\E[?1047l\E[?1048l, rs1=\Ec,
+       rs2=\E[!p\E[?3;4l\E[4l\E>,
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-       smcup=\E[?1048h\E[?1047h, use=xterm-xf86-v33,
+       smcup=\E[?1048h\E[?1047h, use=ansi+pp,
+       use=xterm-xf86-v33,
 
 # This version was released in XFree86 4.0.
 xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System),
@@ -3553,7 +3570,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, mc5i, mir, msgr, xenl, AX,
+       OTbs, am, bce, km, 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,
@@ -3566,19 +3583,19 @@ xterm-basic|modern xterm terminal emulator - common,
        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=^J, invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>,
-       kmous=\E[M, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, meml=\El,
-       memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
-       rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l, rmir=\E[4l,
-       rmkx=\E[?1l\E>, rmm=\E[?1034l, 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,
+       kmous=\E[M, meml=\El, memu=\Em, op=\E[39;49m, rc=\E8,
+       rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l,
+       rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>,
+       rmm=\E[?1034l, 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}%=%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=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%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, smcup=\E[?1049h,
        smir=\E[4h, smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m,
-       smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=xterm+kbs,
-       use=vt100+enq,
+       smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=ansi+pp,
+       use=xterm+kbs, use=vt100+enq,
 
 # From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997
 # In retrospect, something like xterm-r6 was intended here -TD
@@ -3653,7 +3670,7 @@ xterm-1003|testing xterm-mouse,
 #      function to a block or underline.
 # Se resets the cursor style to the terminal power-on default.
 #  
-# Cs and Ce set and reset the cursor colour.
+# Cs and Cr set and reset the cursor colour.
 xterm+tmux|advanced xterm features used in tmux,
        Cr=\E]112\007, Cs=\E]12;%p1%s\007,
        Ms=\E]52;%p1%s;%p2%s\007, Se=\E[2 q, Ss=\E[%p1%d q,
@@ -3762,7 +3779,7 @@ xterm-noapp|xterm with cursor keys in normal mode,
        use=xterm,
 
 xterm-24|vs100|xterms|xterm terminal emulator (X Window System),
-       lines#24, use=xterm-old,
+       lines#24, use=xterm,
 
 # This is xterm for ncurses.
 xterm|xterm terminal emulator (X Window System),
@@ -3773,25 +3790,61 @@ xterm|xterm terminal emulator (X Window System),
 xterm-utf8|xterm with no VT100 line-drawing in UTF-8 mode,
        U8#1, use=xterm,
 
-# These entries allow access to the X titlebar and icon name as a status line.
-# Note that twm (and possibly window managers descended from it such as tvtwm,
-# ctwm, and vtwm) track windows by icon-name; thus, you don't want to mess
-# with it.
+# These building-blocks allow access to the X titlebar and icon name as a
+# status line.  There are a few problems in using them in entries:
+#
+# a) tsl should have a parameter to denote the column on which to transfer to
+#    the status line.
+# b) the "0" code for xterm updates both icon-title and window title.  Some
+#    window managers such as twm (and possibly window managers descended from
+#    it such as tvtwm, ctwm, and vtwm) track windows by icon-name. Thus, you
+#    don't want to mess with icon-name when using those window managers.
 xterm+sl|access X title line and icon name,
        hs,
        wsl#40,
-       dsl=\E]0;\007, fsl=^G, tsl=\E]0;, use=xterm,
+       dsl=\E]0;\007, fsl=^G, tsl=\E]0;,
 xterm+sl-twm|access X title line (pacify twm-descended window managers),
        hs,
        wsl#40,
-       dsl=\E]2;\007, fsl=^G, tsl=\E]2;, use=xterm,
+       dsl=\E]2;\007, fsl=^G, tsl=\E]2;,
+
+# In contrast, this block can be used for a DEC vt320 and up.  There are two
+# controls used.
+#
+# DECSASD (select active status display)
+#      \E[0$}  Main display
+#      \E[1$}  Status line
+#
+# DECSSDT (select status line type)
+#      \E[0$~  No status line
+#      \E[1$~  Indicator status line
+#      \E[2$~  Host-writable status line
+#
+# The building block assumes that the terminal always shows something at the
+# status line (either the indicator, or status line).  That is because if no
+# status line is used, then the terminal makes that line part of the user
+# window, changing its size without notice.
+#
+# Because there is no "esl" (enable status line) capability, the "tsl"
+# capability ensures that the status line is host-writable.  A DEC terminal
+# will clear the status line when changing from indicator to host-writable
+# mode.
+#
+# Once on the status line, the row part of cursor addressing is ignored.  Since
+# tsl expects a parameter (to specify the column), the shortest addressing that
+# can be used for this purpose is HPA, e.g., \E[5d to go to column 5.
+#
+dec+sl|DEC VTxx status line,
+       hs,
+       dsl=\E[1$~, fsl=\E[0$}, tsl=\E[2$~\E[1$}\E[%i%p1%d`,
 
 #
 # The following xterm variants don't depend on your base version
 #
 # xterm with bold instead of underline
 xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold,
-       smso=\E[7m, smul=\E[1m, use=xterm-old,
+       sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;1%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
+       smso=\E[7m, smul=\E[1m, use=xterm,
 
 # See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
 xterm-nic|xterm with ich/ich1 suppressed for non-curses programs,
@@ -3988,7 +4041,7 @@ gnome-rh80|GNOME Terminal,
 #
 # bce and msgr are repaired.
 gnome-rh90|GNOME Terminal,
-       bce, msgr,
+       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,
@@ -4796,7 +4849,7 @@ st-16color|simpleterm with 16-colors,
 # shown in the titlebar.
 st-256color|simpleterm with 256 colors,
        ccc@,
-       initc@, use=simpleterm, use=xterm+256color,
+       initc@, use=xterm+256color, use=simpleterm,
 
 ### TERMINATOR
 # http://software.jessies.org/terminator/
@@ -6453,7 +6506,7 @@ hp2626|hp2626a|hp2626p|hp 2626,
        da, db,
        lm#0, pb#19200,
        ed=\ED\EJ$<500>\EC, indn=\E&r%p1%dD, ip=$<4>,
-       is2=\E&j@\r, rin=\E&r%p1%dU, use=hp+pfk+cr,
+       is2=\E&j@\r, rin=\E&r%p1%dU, use=hp+pfk-cr,
        use=hp+labels, use=scrhp,
 
 # This entry is for sysline. It allocates a 23 line window with
@@ -6654,7 +6707,7 @@ hp2621b-kx-p|hp 2621b with new keyboard & printer,
 hp2622|hp2622a|hp 2622,
        da, db,
        lm#0, pb#19200,
-       is2=\E&dj@\r, use=hp+pfk+cr, use=hp+labels, use=scrhp,
+       is2=\E&dj@\r, use=hp+pfk-cr, use=hp+labels, use=scrhp,
 
 # The 2623 is a 2622 with extra graphics hardware.
 hp2623|hp2623a|hp 2623,
@@ -12686,7 +12739,7 @@ oc100|oconcept|c100-1p|old 1 page concept 100,
 #       and mc5= should use the \E[?4i and \E[?5i strings instead).
 
 hds200|Human Designed Systems HDS200,
-       am, bw, eslok, hs, km, mc5i, mir, msgr, xenl, xon,
+       am, bw, eslok, hs, km, mir, msgr, xenl, xon,
        cols#80, it#8, lines#24, lm#0,
        acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G,
        blink=\E[0;5m, bold=\E[0;1m, cbt=\E[Z, civis=\E[6+{,
@@ -12715,13 +12768,12 @@ hds200|Human Designed Systems HDS200,
        kf51=^\051\r, kf52=^\052\r, kf53=^\053\r, kf6=^\006\r,
        kf7=^\007\r, kf8=^\008\r, kf9=^\009\r, khome=\E[H,
        kind=\E[T, knp=\E[U, kpp=\E[V, kri=\E[S, ll=\E[H\E[A,
-       mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\E[E, rc=\E8,
-       rev=\E[0;7m, ri=\EM, rmacs=^O, rmir=\E[4l, rmso=\E[m\017,
-       rmul=\E[m\017, sc=\E7,
+       nel=\E[E, rc=\E8, rev=\E[0;7m, ri=\EM, rmacs=^O, rmir=\E[4l,
+       rmso=\E[m\017, rmul=\E[m\017, sc=\E7,
        sgr=\E[0%?%p1%p6%O%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%O%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
        sgr0=\E[m\017, smacs=^N, smir=\E[4h, smso=\E[0;1;7m,
        smul=\E[0;4m, tbc=\E[3g, tsl=\E[2!w\E[%i%p1%dG,
-       vpa=\E[%i%p1%dd,
+       vpa=\E[%i%p1%dd, use=ansi+pp,
 
 # <ht> through <el> included to specify padding needed in raw mode.
 # (avt-ns: added empty <acsc> to suppress a tic warning --esr)
@@ -15167,7 +15219,7 @@ prism8-w|p8-w|P8-W|MDC Prism-8 in 132 column mode,
 # (esr: commented out <smacs>/<rmacs> because there's no <acsc>)
 #
 prism9|p9|P9|MDC Prism-9 in ANSII mode,
-       am, bw, hs, mc5i, msgr, xenl, xon,
+       am, bw, hs, msgr, xenl, xon,
        cols#80, it#8, lines#24, vt#3, wsl#72,
        bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[<4l,
        clear=^L, cnorm=\E[<4h, cr=^M, csr=\E[%i%p1%d;%p2%d%%v,
@@ -15183,14 +15235,15 @@ prism9|p9|P9|MDC Prism-9 in ANSII mode,
        kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~,
        kf18=\E[32~, 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[H, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=^M^J,
-       prot=\E[32%{, rc=\E[%z, rep=\E[%p2%db%p1%c, rev=\E[7m,
-       ri=\E[L, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m,
+       khome=\E[H, nel=^M^J, prot=\E[32%{, rc=\E[%z,
+       rep=\E[%p2%db%p1%c, rev=\E[7m, ri=\E[L, rmir=\E[4l,
+       rmso=\E[27m, rmul=\E[24m,
        rs2=\E[&p\E[<12l\E F\E[3g\E[9;17;25;33;41;49;57;65;73 N,
        sc=\E[%y,
        sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;m%?%p8%t\E[32%%{%;%?%p9%t\016%e\017%;,
        sgr0=\E[0m\017, smir=\E[4h, smso=\E[7m, smul=\E[4m,
        tbc=\E[3g, tsl=\E[%i%p1%d%%}, vpa=\E[%i%p1%dd,
+       use=ansi+pp,
 
 # p9-w: Prism-9 in 132 column mode
 # --------------------------------
@@ -18563,7 +18616,7 @@ dku7202|BULL Questar 200 DKU7202 (colour/character attributes),
 
 # This entry covers BQ303, BQ306, BQ310, Q303, Q306, Q310
 bq300|Bull vt320 ISO Latin 1 80 columns terminal,
-       am, eo, eslok, hs, km, mc5i, mir, msgr, xenl, xon,
+       am, eo, eslok, hs, km, mir, msgr, xenl, xon,
        cols#80, it#8, lines#24, vt#3, wsl#80,
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
        bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
@@ -18587,14 +18640,14 @@ bq300|Bull vt320 ISO Latin 1 80 columns terminal,
        kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~,
        khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
        krdo=\E[29~, kslt=\E[4~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4,
-       mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m,
-       ri=\EM, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?7h, rmir=\E[4l,
-       rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, rs1=\E[!p,
-       rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0, sc=\E7,
+       nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l,
+       rmcup=\E[?7h, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
+       rmul=\E[24m, rs1=\E[!p, rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0,
+       sc=\E7,
        sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;,
        sgr0=\E[0m\E(B, smacs=\E(0, smam=\E[?7h,
        smcup=\E[?7l\E[?1l\E(B, smir=\E[4h, smso=\E[7m,
-       smul=\E[4m, tbc=\E[3g, tsl=\E[1$}\E[2$~,
+       smul=\E[4m, tbc=\E[3g, tsl=\E[1$}\E[2$~, use=ansi+pp,
 bq300-rv|Bull vt320 reverse 80 columns,
        flash=\E[?5l$<50>\E[?5h,
        is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l,
@@ -21300,6 +21353,102 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 # CF for civis and CO for cvvis.  Finally, they define a boolean :ct:
 # that flags color terminals.
 #
+# Extensions added after ncurses 5.0 generally use the "-x" option of tic and
+# infocmp to manipulate user-definable capabilities.  Those that are intended
+# for use in either terminfo or termcap use 2-character names.  Extended
+# function keys do not use 2-character names, and are available only with
+# terminfo.
+#
+# As of mid-2012, no other terminfo/termcap implementation than ncurses
+# supports this extension; termcap libraries can as noted above make limited
+# use of the feature.
+#
+# ncurses makes explicit checks for a few user-definable capabilities:  AX, U8,
+# XM.
+#
+# SCREEN Extensions:
+#
+# The screen program uses the termcap interface.  It recognizes a few useful
+# nonstandard capabilities.  Those are used in this file.
+#
+#       AX   (bool)  Does  understand  ANSI  set  default fg/bg color (\E[39m /
+#                    \E[49m).
+#       G0   (bool)  Terminal can deal with ISO 2022  font  selection sequences.
+#       E0   (str)   Switch charset 'G0' back to standard charset.
+#       S0   (str)   Switch charset 'G0' to the specified charset.
+#       XT   (bool)  Terminal understands special xterm sequences  (OSC,  mouse
+#                    tracking).
+#
+# AX is relatively straightforward; it is interpreted by ncurses to say that
+# SGR 39/49 reset the terminal's foreground and background colors to their
+# "default".
+#
+# XT is harder, since screen's manpage does not give more details.  For that,
+# we must read screen's source-code.  When XT is set, screen assumes
+#
+# a) OSC 1 sets the title string, e.g., for the icon.  Recent versions of
+#    screen may also set the terminal's name, which is (for xterm) distinct
+#    from the icon name.
+# b) OSC 20 sets the background pixmap.  This is an rxvt feature.
+# c) OSC 39 and OSC 49 set the default foreground/background colors.  Again
+#    this is an rxvt feature.
+# d) certain mode settings enable the mouse: 9, 1000, 1001, 1002, 1003.
+#    These are from xterm, although xterm accepts mouse codes that may not be
+#    recognized by screen, e.g., 1005, 1006.
+# e) colors beyond 0..7 are implemented by xterm's aixterm-like 16-color
+#    sequence.  However, because screen uses only termcap, the values returned
+#    by Af/Ab are not usable because they rely on expressions that termcap
+#    does not support.  Therefore, screen uses a hardcoded string to work
+#    around the limitation.
+# f) all entries named "*xterm*" or "*rxvt*" have the bce flag set.
+#
+# The other ISO-2022 features are rarely used, but provided here to make
+# screen's termcap features available.
+#
+# XTERM Extensions:
+#
+# Most of the xterm extensions are for function-keys.  Since patch #94 (in
+# 1999), xterm has supported shift/control/alt/meta modifiers which produce
+# additional function-key strings.  Some other developers copied the feature,
+# though they did not follow xterm's lead in patch #167 (in 2002), to make
+# these key definitions less ambiguous.
+#
+# A few terminals provide similar functionality (sending distinct keys when
+# a modifier is used), including rxvt.
+#
+# These are the extended keys defined in this file:
+#
+# kDC3 kDC4 kDC5 kDC6 kDC7 kDN kDN3 kDN4 kDN5 kDN6 kDN7 kEND3 kEND4 kEND5 kEND6
+# kEND7 kHOM3 kHOM4 kHOM5 kHOM6 kHOM7 kIC3 kIC4 kIC5 kIC6 kIC7 kLFT3 kLFT4
+# kLFT5 kLFT6 kLFT7 kNXT3 kNXT4 kNXT5 kNXT6 kNXT7 kPRV3 kPRV4 kPRV5 kPRV6 kPRV7
+# kRIT3 kRIT4 kRIT5 kRIT6 kRIT7 kUP kUP3 kUP4 kUP5 kUP6 kUP7 ka2 kb1 kb3 kc2
+#
+# Here are the other xterm-related extensions which are used in this file:
+#
+# Cr is a string capability which resets the cursor color
+# Cs is a string capability which sets the cursor color to a given value.
+#    The single string parameter is the color name/number, according to the
+#    implementation.
+# Ms modifies the selection/clipboard.  Its parameters are
+#      p1 = the storage unit (clipboard, selection or cut buffer)
+#      p2 = the base64-encoded clipboard content.
+# Se resets the cursor style to the terminal power-on default.
+# Ss is a string capability with one numeric parameter.  It is used to set the
+#    cursor style as described by the DECSCUSR function to a block or
+#    underline.
+# XM is a string capability which overrides ncurses's built-in string which
+#    enables xterm mouse mode.
+#
+# Miscellaneous extensions:
+#
+# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode.
+#    This was implemented for the Hurd.
+# E3 clears the terminal's scrollback buffer.  This was implemented in the
+#    Linux 3.0 kernel as a security feature.
+# U8 is a numeric capability which denotes a terminal emulator which does not
+#    support VT100 SI/SO when processing UTF-8 encoding.  Set this to a nonzero
+#    value to enable it.
+#
 ######## CHANGE HISTORY
 #
 # The last /etc/termcap version maintained by John Kunze was 8.3, dated 8/5/94.
@@ -22707,4 +22856,27 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 #      * make sgr for aaa-60-dec-rv, aaa+dec agree with other caps -TD
 #      * make sgr for cygwin, cygwinDBG agree with other caps -TD
 #
+# 2012-03-31
+#      * correct order of use-clauses in st-256color -TD
+#
+# 2012-04-01
+#      * revert 2011-07-16 change to "linux" alias, return to "linux2.2" -TD
+#
+# 2012-04-14
+#      * document all of the user-defined capabilities in one place -TD
+#      * add XT to some places to improve usefulness for other applications
+#        than screen, which would like to pretend that xterm's title is
+#        a status-line. -TD
+#      * change use-clauses in ansi-mtabs, hp2626, and hp2622 based on review
+#        of ordering and overrides -TD
+#
+# 2012-04-21
+#      * add msgr to vt420, similar DEC vtXXX entries -TD
+#      * add several missing vt420 capabilities from vt220 -TD
+#      * factor out ansi+pp from several entries -TD
+#      * change xterm+sl and xterm+sl-twm to include only the status-line
+#        capabilities and not "use=xterm", making them more generally useful
+#        as building-blocks -TD
+#      * add dec+sl building block, as example -TD
+#
 ######## SHANTIH!  SHANTIH!  SHANTIH!