NAME
tgetent,
tgetnum,
tgetflag,
tgetstr,
tgoto,
tputs —
terminal independent operation routines
LIBRARY
Termcap Access Library (libtermcap, -ltermcap)
SYNOPSIS
#include <termcap.h>
char PC;
char *BC;
char *UP;
int
tgetent(
char
*bp,
const char
*name);
int
tgetnum(
const
char *id);
int
tgetflag(
const
char *id);
char *
tgetstr(
const
char *id,
char
**area);
char *
tgoto(
const char
*cm,
int destcol,
int destline);
DESCRIPTION
These functions extract and use capabilities from a terminal capability
database. They exist as wrappers around equivalent
terminfo(3) functions, which
new code should use. These are low level routines; see
curses(3) for a higher level
package.
The
tgetent() function calls
setupterm() and
configures
PC,
UP and
BC. Only
PC is actually used
internally. The
tgetent() function returns -1 if none of the
terminfo data base files could be opened, 0 if the terminal
name given does not match an entry, and 1 if all goes well. The
bp argument is not used.
The
tgetnum() function gets the numeric value of the
capability
id, returning -1 if it is not given for the
terminal. The
tgetflag() function returns 1 if the specified
capability is present in the terminal's entry, 0 if it is not. The
tgetstr() function returns the string value of the
capability
id. This is a
terminfo(5) string and not a
termcap string; as such it should only be processed by
tgoto(). The
tgetstr() function returns
NULL
if the capability was not found. The
area argument is unused.
The
tgoto() function returns a cursor addressing string
decoded from
cm to go to column
destcol in line
destline, or
NULL
on error conditions such as out of memory. Please
note that
tgoto() can return an incomplete value on a
malformed input sequence. Historically
tgoto() used to
return “OOPS” on those conditions, so newer programs should now be
checking the return value.
SEE ALSO
terminfo(3),
terminfo(5)
HISTORY
termcap first appeared in 4.0BSD.
NetBSD
1.5 introduced some
termcap t_*()
extensions which were removed in
NetBSD 6.0 when
terminfo(3) was introduced.
AUTHORS
Roy Marples
<
roy@NetBSD.org>