XFree86 3.1.2Dj - xterm patch #14 - 1996/5/12 - T.Dickey
 
This patch brings the termcap and terminfo descriptions for xterm up to date.
I made the following changes:
 
        + reformatted the terminfo description in a single-column (this is ok
          for terminfo, and will simplify future patches -- can't do that for
          termcap, since it would impact buffer requirements on some systems).
 
        + omitted obsolete features in termcap to save a little space (bs, pt)
 
        + added color capabilities to termcap (ut, Co, NC, op, AB, AF)
 
        + corrected some capabilities (vi, ve)
 
        + added 'st' (set tab)
 
        + reduced function keys in termcap for 'xterm' to 12 because color
          capabilities makes that description larger than 1023 characters.
 
        + created new termcap name 'xtermm' (monochrome) to match the terminfo
          list, and make that description have 20 function keys.
 
        + added corresponding color capabilities to terminfo (bce, colors,
          pairs, op, ncv, setab, setaf)
 
        + corrected corresponding capabilities in terminfo (civis, cnorm,
          rmcup, smcup)
 
        + added capabilities (el1, hts)
 
        + in both, corrected home/end keys to match the code correction made
          by Thomas Mueller in 3.1.2Bk
          
          => (I'm still considering modifying the code & description to match
              the rxvt program).
 
--------------------------------------------------------------------------------
  termcap  |   30 ++++++++---
 terminfo |  157 +++++++++++++++++++++++++++++++++++++++++++++----------------
 2 files changed, 139 insertions, 48 deletions
--------------------------------------------------------------------------------
 Index: termcap
--- xterm.orig/termcap  Wed Jan 17 14:16:01 1996
 +++ xterm/termcap       Sun May 12 19:17:45 1996
 @@ -1,6 +1,13 @@
  # $XConsortium: termcap,v 1.13 94/10/13 21:24:32 gildea Exp $
 # $XFree86: xc/programs/xterm/termcap,v 3.0 1996/01/17 12:51:49 dawes Exp $
 #
+# Note:
+#      termcap format is limited to 1023 characters.  This set of descriptions
 +#      is a subset of the terminfo, since not all features can be fit into
 +#      that limit.  The 'xterm' description supports color.  The monochrome
 +#      'xtermm' drops color in favor of additional function keys.  If you need
 +#      both, use terminfo.
 +#
 vs|xterm|xterm-24|xterms|vs100|xterm terminal emulator (X Window System):\
        :is=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\
        :rs=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\
@@ -8,7 +15,7 @@
        :LE=\E[%dD:RI=\E[%dC:\
        :al=\E[L:am:\
        :bl=^G:\
-       :bs:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:co#80:\
 +       :cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:co#80:\
         :cs=\E[%i%d;%dr:ct=\E[3g:\
        :dc=\E[P:dl=\E[M:\
        :ho=\E[H:\
@@ -16,28 +23,33 @@
        :ks=\E[?1h\E=:ke=\E[?1l\E>:\
        :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
        :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
-       :k;=\E[21~:\
 -       :kh=\E[H:K4=\E[F:K2=\E[E:\
 -       :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
 -       :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\
 -       :kn#20:\
+       :k;=\E[21~:F1=\E[23~:F2=\E[24~:\
 +       :kn#12:\
+       :@7=\EOF:kh=\EOH:\
         :@0=\E[1~:kI=\E[2~:kD=\E[3~:\
        :*6=\E[4~:kP=\E[5~:kN=\E[6~:\
        :km:\
        :kb=^H:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:\
-       :li#24:md=\E[1m:me=\E[m:mr=\E[7m:ms:nd=\E[C:pt:\
 +       :li#24:md=\E[1m:me=\E[m:mr=\E[7m:ms:nd=\E[C:\
         :eA=\E)0:as=^N:ae=^O:\
        :ml=\El:mu=\Em:\
        :sc=\E7:rc=\E8:sf=\n:so=\E[7m:se=\E[m:sr=\EM:\
+       :st=\EH:\
        :ti=\E7\E[?47h:te=\E[2J\E[?47l\E8:\
-       :vi=\E[25l:ve=\E[25h:\
 -       :up=\E[A:us=\E[4m:ue=\E[m:xn:
 +       :vi=\E[?25l:ve=\E[?25h:\
 +       :up=\E[A:us=\E[4m:ue=\E[m:xn:\
 +       :ut:Co#8:NC#7:op=\E100m:AB=\E[4%dm:AF=\E[3%dm:
  v2|xterm-65|xterm with tall window 65x80 (X Window System):\
        :li#65:tc=xterm:
 vb|xterm-bold|xterm with bold instead of underline (X Window System):\
        :us=\E[1m:tc=xterm:
 vb|xterm-boldso|xterm with bold for standout (X Window System):\
        :so=\E[1m:tc=xterm:
+xtermm|monochrome xterm (X Window System):\
 +       :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
 +       :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\
 +       :kn#20:\
+       :st@:ut@:Co@:NC@:op@:AB@:AF@:tc=xterm:
  #
 # vi may work better with this entry, because vi
 # doesn't use insert mode much
Index: terminfo
--- xterm.orig/terminfo Wed Jan 17 14:16:01 1996
 +++ xterm/terminfo      Sun May 12 17:28:33 1996
 @@ -3,58 +3,137 @@
  # meml locks memory above the cursor; memu unlocks (ala HP terminals)
 #
 xterm|xterm-24|xterms|vs100|xterm terminal emulator (X Window System),
-       is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
 -       rs2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
 -       am, bel=^G,
 -       cols#80, lines#24,
 -       clear=\E[H\E[2J, cup=\E[%i%p1%d;%p2%dH,
 -       csr=\E[%i%p1%d;%p2%dr,
 -       cud=\E[%p1%dB, cud1=\n, cuu=\E[%p1%dA, cuu1=\E[A,
 -       cub=\E[%p1%dD, cub1=\b, cuf=\E[%p1%dC, cuf1=\E[C,
 -       civis=\E[25l, cnorm=\E[25h,
 -       el=\E[K, ed=\E[J,
 -       home=\E[H, ht=^I, ind=^J, cr=^M,
 -       khome=\E[H, kend=\E[F, kbeg=\E[E,
 +       am,
+       bce,
         km,
-       smir=\E[4h, rmir=\E[4l, mir,
 -       smso=\E[7m, rmso=\E[m, smul=\E[4m, rmul=\E[m,
 -       bold=\E[1m, rev=\E[7m, blink=@, sgr0=\E[m^O, msgr,
 -       smkx=\E[?1h\E=, rmkx=\E[?1l\E>,
 -       kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
 -       kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
 +       mir,
+       msgr,
 +       xenl,
+       colors#8,
 +       cols#80,
+       lines#24,
 +       ncv#7,
+       pairs#64,
 +       acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
 +       bel=^G,
+       bold=\E[1m,
 +       civis=\E[?25l,
 +       clear=\E[H\E[2J,
 +       cnorm=\E[?25h,
 +       cr=^M,
+       csr=\E[%i%p1%d;%p2%dr,
 +       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,
 +       cuu=\E[%p1%dA,
 +       cuu1=\E[A,
 +       dch=\E[%p1%dP,
 +       dch1=\E[P,
 +       dl=\E[%p1%dM,
 +       dl1=\E[M,
+       ed=\E[J,
 +       el=\E[K,
+       el1=\E[1K$<3>,
 +       enacs=\E(B\E)0,
 +       home=\E[H,
 +       ht=^I,
+       hts=\EH,
 +       il=\E[%p1%dL,
+       il1=\E[L,
+       ind=^J,
 +       is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
 +       kbeg=\E[E,
 +       kbs=^H,
+       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[25~, kf14=\E[26~, kf15=\E[28~,
 -       kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~,
 -       kfnd=\E[1~, kich1=\E[2~, kdch1=\E[3~,
 -       kslt=\E[4~, kpp=\E[5~, knp=\E[6~,
 -       kbs=\b, kcuu1=\EOA, kcud1=\EOB, kcuf1=\EOC, kcub1=\EOD,
 -       meml=\El, memu=\Em,
 -       smcup=\E[?47h, rmcup=\E[?47l,
 -       sc=\E7, rc=\E8,
 -       il=\E[%p1%dL, dl=\E[%p1%dM, il1=\E[L, dl1=\E[M,
 +       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,
 +       kf5=\E[15~,
 +       kf6=\E[17~,
 +       kf7=\E[18~,
 +       kf8=\E[19~,
 +       kf9=\E[20~,
 +       kfnd=\E[1~,
 +       khome=\EOH,
 +       kich1=\E[2~,
 +       knp=\E[6~,
 +       kpp=\E[5~,
 +       kslt=\E[4~,
 +       meml=\El,
+       memu=\Em,
 +       op=\E[100m,
 +       rc=\E8,
+       rev=\E[7m,
         ri=\EM,
-       dch=\E[%p1%dP, dch1=\E[P,
 -       tbc=\E[3g,
 -       xenl,
-       colors#8, ncv#7, pairs#64,
 -       setab=\E[4%p1%dm, setaf=\E[3%p1%dm, op=\E[100m,
 +       rmacs=^O,
+       rmcup=\E[2J\E[?47l\E8,
 +       rmir=\E[4l,
 +       rmkx=\E[?1l\E>,
 +       rmso=\E[m,
 +       rmul=\E[m,
 +       rs2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\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=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;,
 -       acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
 -       enacs=\E(B\E)0, smacs=^N, rmacs=^O,
 +       sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
 +       sgr0=\E[m\017,
 +       smacs=^N,
+       smcup=\E7\E[?47h,
 +       smir=\E[4h,
 +       smkx=\E[?1h\E=,
 +       smso=\E[7m,
 +       smul=\E[4m,
 +       tbc=\E[3g,
  xterm-65|xterm with tall window 65x80 (X Window System),
        lines#65,
        use=xterm,
 xterm-bold|xterm with bold instead of underline (X Window System),
-       smul=\E[1m, use=xterm,
 +       smul=\E[1m,
 +       use=xterm,
  xtermm|monochrome xterm (X Window System),
-       colors@, ncv@, pairs@, setab@, setaf@, op@, setb@, setf@, sgr@, 
 +       colors@,
+       ncv@,
 +       pairs@,
+       op@,
 +       setab@,
+       setaf@,
 +       setb@,
+       setf@,
 +       sgr@,
        use=xterm,
 xterm-boldso|xterm with bold for standout (X Window System),
-       smso=\E[1m, use=xterm,
 +       smso=\E[1m,
 +       use=xterm,
  #
 # vi may work better with this entry, because vi
 # doesn't use insert mode much
 xterm-ic|xterm-vi|xterm with insert character instead of insert mode,
-       smir@, rmir@, mir@, ich1=\E[@, ich=\E[%p1%d@, use=xterm,
 +       mir@,
+       ich=\E[%p1%d@,
 +       ich1=\E[@,
 +       rmir@,
+       smir@,
 +       use=xterm,