Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ termcap(3) — GENIX 4.1A

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ex(1)

curses(3)

termcap(5)



      TERMCAP(3)              GENIX Programmer's Manual              TERMCAP(3)



      NAME
           tgetent,  tgetnum,  tgetflag,  tgetstr,  tgoto,  tputs  -   terminal
           independent operation routines

      SYNOPSIS
           char PC;
           char *BC;
           char *UP;
           short ospeed;

           tgetent(bp, name)
           char *bp, *name;

           tgetnum(id)
           char *id;

           tgetflag(id)
           char *id;

           char *
           tgetstr(id, area)
           char *id, **area;

           char *
           tgoto(cm, destcol, destline)
           char *cm;

           tputs(cp, affcnt, outc)
           register char *cp;
           int affcnt;
           int (*outc)();

      DESCRIPTION
           These functions extract and use capabilities from the terminal capa-
           bility  data  base  termcap(5).   These  are low level routines; see
           curses(3) for a higher level package.

           Tgetent extracts the entry for terminal name into the buffer at  bp.
           Bp  should  be  a character buffer of size 1024 and must be retained
           through all subsequent calls  to  tgetnum,  tgetflag,  and  tgetstr.
           Tgetent returns -1 if it cannot open the termcap file, 0 if the ter-
           minal name given does not have an entry, and 1 if all goes well.  It
           will  look in the environment for a TERMCAP variable.  If found, and
           the value does not begin with a slash, and the terminal type name is
           the  same as the environment string TERM, the TERMCAP string is used
           instead of reading the termcap file.  If it does begin with a slash,
           the string is used as a path name rather than /etc/termcap. This can
           speed up entry into programs that call tgetent, as well as  to  help
           debug  new terminal descriptions or to make one for your terminal if
           you can't write the file /etc/termcap.





      Printed 11/16/83                                                        1





      TERMCAP(3)              GENIX Programmer's Manual              TERMCAP(3)



           Tgetnum gets the numeric value of capability id, returning -1 if  is
           not  given  for  the  terminal.  Tgetflag returns 1 if the specified
           capability is present in the terminal's  entry,  0  if  it  is  not.
           Tgetstr  gets  the  string value of capability id, placing it in the
           buffer at area, advancing the area pointer.  It decodes the abbrevi-
           ations  for  this  field  described in termcap(5), except for cursor
           addressing and padding information.

           Tgoto returns a cursor addressing string decoded from cm  to  go  to
           column  destcol  in line destline. It uses the external variables UP
           (from the up capability) and BC (if bc is given rather than  bs)  if
           necessary  to  avoid  placing  \n,  ^D or ^@ in the returned string.
           (Programs which call tgoto should be sure  to  turn  off  the  XTABS
           bit(s),  since tgoto may now output a tab.  Note that programs using
           termcap should in general turn off XTABS anyway since some terminals
           use control I for other functions, such as nondestructive space.) If
           a % sequence is given which is not understood,  then  tgoto  returns
           "OOPS".

           Tputs decodes the leading padding  information  of  the  string  cp;
           affcnt  gives the number of lines affected by the operation, or 1 if
           this is not applicable, outc is a routine which is called with  each
           character  in turn.  The external variable ospeed should contain the
           output speed of the terminal as encoded by stty  (2).  The  external
           variable  PC  should contain a pad character to be used (from the pc
           capability) if a null (^@) is inappropriate.

      FILES
           /usr/lib/libtermcap.a  -ltermcap library
           /etc/termcap           data base

      SEE ALSO
           ex(1), curses(3), termcap(5)

      AUTHOR
           William Joy

      BUGS














      Printed 11/16/83                                                        2






Typewritten Software • bear@typewritten.org • Edmonds, WA 98026