xterm-14.patch.txt

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,