IO::Pager::Unbuffered(3) User Contributed Perl Documentation NAME IO::Pager::Unbuffered - Pipe output to PAGER if destination is a TTY SYNOPSIS use IO::Pager::Unbuffered; { local $STDOUT = IO::Pager::Unbuffered::open *STDOUT; print <<" HEREDOC" ; ... A bunch of text later HEREDOC } { # You can also use scalar filehandles... my $token = IO::Pager::Unbuffered::open($FH) or warn($!); print $FH "No globs or barewords for us thanks!\n" while 1; } { # ...or an object interface my $token = new IO::Pager::Unbuffered; $token->print("OO shiny...\n") while 1; } DESCRIPTION IO::Pager subclasses are designed to programmatically decide whether or not to pipe a filehandle's output to a program specified in PAGER; determined and set by IO::Pager at runtime if not yet defined. See IO::Pager for method details. METHODS All methods are inherited from IO::Pager; except for instantiation. CAVEATS You probably want to do something with SIGPIPE eg; eval { local $SIG{PIPE} = sub { die }; local $STDOUT = IO::Pager::open(*STDOUT); while (1) { # Do something } } # Do something else SEE ALSO IO::Pager, IO::Pager::Buffered, IO::Pager::Page, AUTHOR Jerrad Pierce Florent Angly This module was inspired by Monte Mitzelfelt's IO::Page 0.02 Significant proddage provided by Tye McQueen. COPYRIGHT AND LICENSE Copyright (C) 2003-2018 Jerrad Pierce o Thou shalt not claim ownership of unmodified materials. o Thou shalt not claim whole ownership of modified materials. o Thou shalt grant the indemnity of the provider of materials. o Thou shalt use and dispense freely without other restrictions. Or, if you prefer: This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.0 or, at your option, any later version of Perl 5 you may have available. perl v5.38.0 2023-07-26 IO::Pager::Unbuffered(3)