termcap(3X) termcap(3X)
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 termi-
nal capability data base termcap(4). These are low level
routines.
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, tget-
flag, and tgetstr. Tgetent returns -1 if it cannot open the
termcap file, 0 if the terminal name given does not have an
entry, and 1 if all goes well. It will look in the environ-
ment 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
/usr/lib/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 /usr/lib/termcap.
Page 1 CX/UX Programmer's Reference Manual
termcap(3X) termcap(3X)
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 abbreviations for this field
described in termcap(4), 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 con-
trol 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 opera-
tion, 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 ter-
minal as encoded by stty(3C). The external variable PC
should contain a pad character to be used (from the pc capa-
bility) if a null (^@) is inappropriate.
FILES
/usr/lib/libtermcap.a termcap library
/usr/lib/termcap data base
SEE ALSO
termcap(4)
terminfo(4)
curses(3X)
AUTHOR
William Joy
BUGS
CX/UX supports termcap as an aid in porting Berkeley 4.2
software. The termcap data base, /usr/lib/termcap, will not
be updated with the latest Harris terminals. Harris
encourages the use of the terminfo(4) terminal data base.
The curses(3X) library package supports terminfo compatibil-
ity routines. These routines emulate all of the routines
documented on this page.
Page 2 CX/UX Programmer's Reference Manual