Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

term::size::perl(3pm) [debian man page]

Perl(3pm)						User Contributed Perl Documentation						 Perl(3pm)

NAME
Term::Size::Perl - Perl extension for retrieving terminal size (Perl version) SYNOPSIS
use Term::Size::Perl; ($columns, $rows) = Term::Size::Perl::chars *STDOUT{IO}; ($x, $y) = Term::Size::Perl::pixels; DESCRIPTION
Yet another implementation of "Term::Size". Now in pure Perl, with the exception of a C probe run on build time. FUNCTIONS chars ($columns, $rows) = chars($h); $columns = chars($h); "chars" returns the terminal size in units of characters corresponding to the given filehandle $h. If the argument is omitted, *STDIN{IO} is used. In scalar context, it returns the terminal width. pixels ($x, $y) = pixels($h); $x = pixels($h); "pixels" returns the terminal size in units of pixels corresponding to the given filehandle $h. If the argument is omitted, *STDIN{IO} is used. In scalar context, it returns the terminal width. Many systems with character-only terminals will return "(0, 0)". SEE ALSO
It all began with Term::Size by Tim Goodwin. You may want to have a look at: Term::Size Term::Size::Unix Term::Size::Win32 Term::Size::ReadKey It would be helpful if you send me the Params.pm generated by the probe at build time. Please reports bugs via CPAN RT, http://rt.cpan.org/NoAuth/Bugs.html?Dist=Term-Size-Perl BUGS
I am having some hard time to make tests run correctly under the "cpan" script. Some Unix systems do not seem to provide a working tty inside automatic installers. I think it needs some skip tests, but I am yet not sure what should be the portable tests for this. Update: This distribution uses new tests to skip if filehandle is not a tty. It was noticed that "Test::Harness" and "prove", for instance, provide a non-tty STDOUT to the test script and automatic installers could provide a non-tty STDIN. So the former tests were basically wrong. I am improving my understanding of the involved issues and I hope to soon fix the tests for all of Term::Size modules. AUTHOR
A. R. Ferreira, <ferreira@cpan.org> COPYRIGHT AND LICENSE
Copyright (C) 2006-2007 by A. R. Ferreira This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.14.2 2012-01-22 Perl(3pm)

Check Out this Related Man Page

Size(3pm)						User Contributed Perl Documentation						 Size(3pm)

NAME
Term::Size - Retrieve terminal size (Unix version) SYNOPSIS
use Term::Size; ($columns, $rows) = Term::Size::chars *STDOUT{IO}; ($x, $y) = Term::Size::pixels; DESCRIPTION
Term::Size is a Perl module which provides a straightforward way to retrieve the terminal size. Both functions take an optional filehandle argument, which defaults to *STDIN{IO}. They both return a list of two values, which are the current width and height, respectively, of the terminal associated with the specified filehandle. "Term::Size::chars" returns the size in units of characters, whereas "Term::Size::pixels" uses units of pixels. In a scalar context, both functions return the first element of the list, that is, the terminal width. The functions may be imported. If you need to pass a filehandle to either of the "Term::Size" functions, beware that the *STDOUT{IO} syntax is only supported in Perl 5.004 and later. If you have an earlier version of Perl, or are interested in backwards compatibility, use *STDOUT instead. EXAMPLES
1. Refuse to run in a too narrow window. use Term::Size; die "Need 80 column screen" if Term::Size::chars *STDOUT{IO} < 80; 2. Track window size changes. use Term::Size 'chars'; my $changed = 1; while(1) { local $SIG{'WINCH'} = sub { $changed = 1 }; if ($changed) { ($cols, $rows) = chars; # Redraw, or whatever. $changed = 0; } } RETURN VALUES
Both functions return "undef" if there is an error. If the terminal size information is not available, the functions will normally return "(0, 0)", but this depends on your system. On character only terminals, "pixels" will normally return "(0, 0)". BUGS
It only works on Unix systems. AUTHOR
Tim Goodwin, <tim@uunet.pipex.com>, 1997-04-23. Candidate for maintainership: Adriano Ferreira, <ferreira@cpan.org>, 2006-05-19. perl v5.14.2 2012-03-04 Size(3pm)
Man Page