119 lines
4.1 KiB
Groff
119 lines
4.1 KiB
Groff
|
||
|
||
TERMCAP(3) Minix Programmer's Manual TERMCAP(3)
|
||
|
||
|
||
NAME
|
||
termcap, tgetent, tgetnum, tgetflag, tgetstr, tgoto, tputs - terminal
|
||
independent operation routines
|
||
|
||
SYNOPSIS
|
||
#include <termcap.h>
|
||
|
||
int tgetent(char *bp, char *name)
|
||
int tgetflag(char *id)
|
||
int tgetnum(char *id)
|
||
char *tgetstr(char *id, char **area)
|
||
char *tgoto(char *cm, int destcol, int destline)
|
||
int tputs(char *cp, int affcnt, void (*outc)(int))
|
||
|
||
DESCRIPTION
|
||
These functions extract and use capabilities from the terminal capability
|
||
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 find a termcap file, 0 if the terminal name given does
|
||
not have an entry, and 1 if all goes well.
|
||
|
||
Tgetent uses the following recipe to find the termcap file and entry
|
||
name:
|
||
|
||
if $TERMCAP is itself a termcap entry for name
|
||
then
|
||
use $TERMCAP
|
||
elif $TERMCAP names a file
|
||
then
|
||
use entry name found in that file
|
||
elif this is Minix-vmd
|
||
then
|
||
if $TERMPATH is defined
|
||
then
|
||
search the termcap files named in $TERMPATH for the first
|
||
occurance of a name entry and use that entry
|
||
else
|
||
the path $HOME/.termcap:/etc/termcap:/usr/etc/termcap" is
|
||
searched for entry name
|
||
fi
|
||
fi
|
||
|
||
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 returns the
|
||
string value of the capability id, places it in the buffer at area, and
|
||
|
||
|
||
4BSD May 15, 1985 1
|
||
|
||
|
||
|
||
TERMCAP(3) Minix Programmer's Manual TERMCAP(3)
|
||
|
||
|
||
advances the area pointer. It decodes the abbreviations for this field
|
||
described in termcap(5), except for cursor addressing and padding
|
||
information. Tgetstr returns NULL if the capability was not found.
|
||
|
||
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 CTRL-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(3). The external variable PC should
|
||
contain a pad character to be used (from the pc capability) if a null
|
||
(^@) is inappropriate.
|
||
|
||
SEE ALSO
|
||
curses(3), termcap(5).
|
||
|
||
AUTHOR
|
||
William Joy
|
||
|
||
NOTES
|
||
The Minix implementation does not support any of the external variables,
|
||
only the functions calls. The Minix-vmd termcap does support it all,
|
||
although noone in his right mind meddles with those variables.
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
4BSD May 15, 1985 2
|
||
|