Termcap, terminfo, and curses.

SLG6M%USU.BITNET at WISCVM.WISC.EDU SLG6M%USU.BITNET at WISCVM.WISC.EDU
Mon Jul 28 09:23:48 AEST 1986


Quoted from INFO-UNIX digest V2#174:

> +---------------
> | Alas, it seems AT&T has broken termcap and instead of fixing it, they
> | decided not to support it.
> +---------------
>
> Huh???  I hate to tell you, but what you're so blithely calling termcap is in
> reality terminfo.  Read TERM(4) in the UNIX Programmer's Reference Guide.  The
> current version of terminfo supports access of terminfo capabilities by the
> old termcap names via compatibility calls to tget*; however, the two work in
> totally different ways.  (Tgetstr() doesn't need a buffer; terminfo uses an
> internal buffer instead.  Which is a step forward in my opinion.)

HP-UX V5.05 is supposed to be Sys V compatable.  All of my
comments are based on my experience with it.  Read TERMCAP(4)
in the (yes!) System V Programmer's manual.  The routines
in question are called "emulation" routines.  If routine B is
supposed emulate routine A, and B doesn't always behave the same
as A for the same usage, it's not emulating routine A, folks.
By the way, termcap referes to BOTH a terminal capability database
(/etc/termcap) and to the low-level routines that interface with
it.  Terminfo refers to another terminal database (/usr/lib/terminfo
and subdirectories thereof).

> +---------------
> | BTW, the machine I have checked this  on is  an AT&T  PC6300PLUS.  It
> | exibited the same problems you described.  It  now works  by doing it
> | the way I described above.
> +---------------
>
> Read TERM(4) and rewrite using terminfo.  You won't be sorry; terminfo is much
> cleaner than termcap.

You *can't* "rewrite using terminfo."  Because terminfo is just a DATABASE.
The routines in question are called curses (which, by the way, also exist
on non-AT&T systems like BSD).

           --David Barts                              "Information breeds
             Utah State University, Logan, Utah, USA  distrust, distrust
Bitnet:      SLG6M at USU.BITNET                         breeds thinking, and
ARPAnet:     slg6m%usu.bitnet at wiscvm.arpa             THINKING BREEDS
AT&T:        801-753-2952                             ANARCHY!"
USPS:        654 1/2 E 800 N / Logan, UT 84321        - Tangerine Radio QSL



More information about the Comp.unix mailing list