


Term::Cap(3p)    Perl Programmers Reference Guide   Term::Cap(3p)


NAME
       Term::Cap - Perl termcap interface

SYNOPSIS
           require Term::Cap;
           $terminal = Tgetent Term::Cap { TERM => undef, OSPEED => $ospeed };
           $terminal->Trequire(qw/ce ku kd/);
           $terminal->Tgoto('cm', $col, $row, $FH);
           $terminal->Tputs('dl', $count, $FH);
           $terminal->Tpad($string, $count, $FH);


DESCRIPTION
       These are low-level functions to extract and use capabili-
       ties from a terminal capability (termcap) database.

       The Tgetent function extracts the entry of the specified
       terminal type TERM (defaults to the environment variable
       TERM) from the database.

       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
       a termcap file.  If it does begin with a slash, the string
       is used as a path name of the termcap file to search.  If
       TERMCAP does not begin with a slash and name is different
       from TERM, Tgetent searches the files $HOME/.termcap,
       /etc/termcap, and /usr/share/misc/termcap, in that order,
       unless the environment variable TERMPATH exists, in which
       case it specifies a list of file pathnames (separated by
       spaces or colons) to be searched instead.  Whenever multi-
       ple files are searched and a tc field occurs in the
       requested entry, the entry it names must be found in the
       same file or one of the succeeding files.  If there is a
       ":tc=...:" in the TERMCAP environment variable string it
       will continue the search in the files as above.

       OSPEED is the terminal output bit rate (often mistakenly
       called the baud rate).  OSPEED can be specified as either
       a POSIX termios/SYSV termio speeds (where 9600 equals
       9600) or an old BSD-style speeds (where 13 equals 9600).

       Tgetent returns a blessed object reference which the user
       can then use to send the control strings to the terminal
       using Tputs and Tgoto.  It calls "croak" on failure.

       Tgoto decodes a cursor addressing string with the given
       parameters.

       The output strings for Tputs are cached for counts of 1
       for performance.  Tgoto and Tpad do not cache.
       "$self->{_xx}" is the raw termcap data and "$self->{xx}"
       is the cached version.



2000-04-06                 perl v5.6.1                          1





Term::Cap(3p)    Perl Programmers Reference Guide   Term::Cap(3p)


           print $terminal->Tpad($self->{_xx}, 1);

       Tgoto, Tputs, and Tpad return the string and will also
       output the string to $FH if specified.

       The extracted termcap entry is available in the object as
       "$self->{TERMCAP}".

EXAMPLES
           # Get terminal output speed
           require POSIX;
           my $termios = new POSIX::Termios;
           $termios->getattr;
           my $ospeed = $termios->getospeed;

           # Old-style ioctl code to get ospeed:
           #     require 'ioctl.pl';
           #     ioctl(TTY,$TIOCGETP,$sgtty);
           #     ($ispeed,$ospeed) = unpack('cc',$sgtty);

           # allocate and initialize a terminal structure
           $terminal = Tgetent Term::Cap { TERM => undef, OSPEED => $ospeed };

           # require certain capabilities to be available
           $terminal->Trequire(qw/ce ku kd/);

           # Output Routines, if $FH is undefined these just return the string

           # Tgoto does the % expansion stuff with the given args
           $terminal->Tgoto('cm', $col, $row, $FH);

           # Tputs doesn't do any % expansion.
           $terminal->Tputs('dl', $count = 1, $FH);
























2000-04-06                 perl v5.6.1                          2


