Term::Size::Perl - Perl extension for retrieving terminal size (Perl version)
use Term::Size::Perl; ($columns, $rows) = Term::Size::Perl::chars *STDOUT{IO}; ($x, $y) = Term::Size::Perl::pixels;
Yet another implementation of Term::Size. Now in pure Perl, with the exception of a C probe run on build time.
Term::Size
($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 ommitted, *STDIN{IO} is used. In scalar context, it returns the terminal width.
chars
$h
*STDIN{IO}
($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 ommitted, *STDIN{IO} is used. In scalar context, it returns the terminal width.
pixels
Many systems with character-only terminals will return (0, 0).
(0, 0)
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
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.
cpan
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.
Test::Harness
prove
A. R. Ferreira, <ferreira@cpan.org>
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.
To install Term::Size::Perl, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Term::Size::Perl
CPAN shell
perl -MCPAN -e shell install Term::Size::Perl
For more information on module installation, please visit the detailed CPAN module installation guide.