This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: terminfo/termcap entry (was Re: [PATCH]

cgf> After that, I will get to Bradley's changes.  I'm a little leery of
cgf> terminfo -> termcap translated changes since I've had problems with that
cgf> before.

After hosing programs with my termcap file created from my terminfo file,
I'll be more careful with such translations.  I just can't bear the thought
of maintaining both ...  :)

Below is a table detailing the differences between Earnie's terminfo entry he
posted the other day and the one that I now use.  The changes necessary to
take advantage of my patch are at the beginning.

Name    Earnie          Brad            Explanation
 (Display attributes [these use my patch]:)
blink   \E[5m           (none)          [Blink] Not impl. in my patch (2)
dim     \E[2m           (none)          [Dim] Not impl. in my patch (2)
ncv     3               0 (not set)     [No color video] Not needed with my patch
rmso    \E[m            \E[27m          [Exit standout mode] Uses my patch (3)
rmul    \E[m            \E[24m          [Exit underline mode] Uses my patch (3)
 Earnie: \E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m
 Brad: \E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7%t;8%;m
 Mine leaves out the font change, blink, dim, protect, and alt charset modes
 so programs know what they can and can't do.

 (Not needed:)
cols    80              (none)          [Columns] Not always correct
lines   24              (none)          [Lines] Not always correct

 (Things not implemented or broken in Cygwin:)
cnorm   \E[?25h         (none)          [Make cursor normal] Not impl. in Cygwin
eo      (set)           (not set)       [Erase overstrike with blank]
flash   \E[?5h\E[?5l$<200/>     (none)  [Flash] Not impl. in Cygwin
kcbt    \E[Z            (none)          [Backtab key] Not impl. in Cygwin
khome   \E[1~, \E[H     \E[1~           [Home key] Earnie has two -- I think \E[H is wrong
kNXT    \E[6$           (none)          [Shifted next key] Not impl. in Cygwin
kPRV    \E[5$           (none)          [Shifted prev key] Not impl. in Cygwin
mir     (set)           (not set)       [Move in insert mode] `tack' test fails
rmacs   \E[10m          (none)          [End alt charset] Not impl. in Cygwin
rmir    \E[4l           (none)          [Exit insert mode] Not impl. in Cygwin
rs1     \Ec\E]R         \Ec             [Reset string] \E]R means nothing to Cygwin (1)
sgr0    \E[0;10m        \E[m            [Reset display mode] SGR mode 10 not impl. in Cygwin
smacs   \E[12m, \E[11m  (none)          [Start alt charset] Not impl. in Cygwin
smir    \E[4h           (none)          [Enter insert mode] Not impl. in Cygwin
tbc     \E[2g           (none)          [Clear tab stops] Not impl. in Cygwin

 (Added capabilities:)
csr     (none)          \E[%i%p1%d;%p2%dr   [Change scroll region]
ka1     (none)          \E[1~           [Upper left key]
ka3     (none)          \E[5~           [Upper right key]
kc1     (none)          \E[4~           [Lower left key]
kc3     (none)          \E[6~           [Lower right key]

clear   \E[H\E[J        \E[2J           [Clear screen] \E[2J is faster
cub1    \E[D            ^H              [Cursor back] ^H is faster

 (I leave out the following to make it easier to translate the terminfo
  file to termcap.)
cbt     \E[Z            (none)          [Backtab]
dch1    \E[P            (none)          [Delete one character]
dl1     \E[M            (none)          [Delete one line]
hpa     \E[%i%p1%dG     (none)          [Horiz. pos. abs.]
ich1    \E[@            (none)          [Insert one char]
il1     \E[L            (none)          [Insert one line]
nel     ^M^J            (none)          [Newline]
vpa     \E[%i%p1%dd     (none)          [Vert. pos. abs.]

(1) \E[R means nothing as well.  He could mean ECMA-48's CPR, but that
    isn't implemented in Cygwin.
(2) Not implemented very usefully in stock Cygwin.
(3) Some programs incorrectly assume that turning off some modes reset
    everything.  If you want this behavior, keep these set to \E[m.

Brad Town

Want to unsubscribe from this list?
Send a message to

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]