- NetBSD Manual Pages
TERMCAP(3) NetBSD Library Functions Manual TERMCAP(3)
Powered by man-cgi (2021-03-02).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.
tgetent, tgetnum, tgetflag, tgetstr, tgoto, tputs -- terminal independent
Termcap Access Library (libtermcap, -ltermcap)
tgetent(char *bp, const char *name);
tgetnum(const char *id);
tgetflag(const char *id);
tgetstr(const char *id, char **area);
tgoto(const char *cm, int destcol, int destline);
These functions extract and use capabilities from a terminal capability
database. They exist as wrappers around equivalent terminfo(3) func-
tions, 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 termi-
nal 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() func-
tion 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
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.
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
Roy Marples <roy@NetBSD.org>
NetBSD 8.0 March 14, 2011 NetBSD 8.0