Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Re: Output question

by arhuman (Vicar)
on Dec 26, 2001 at 18:14 UTC ( [id://134393]=note: print w/replies, xml ) Need Help??


in reply to Re: Output question
in thread Output question

I don't see why you should write your pager as '| more' will work both on unices and windoze...

But, If you want to do it anyway, a simple test in front of each print :
if(++$line > $LINEMAX) { $line=0; getc; }

should be enough for simple/small scripts...
Or to be a little bit cleaner, using print2 instead of print, whith print2 defined like this :
sub print2 { if(++$line > $LINEMAX) { $line=0; getc; } print @_; }

UPDATE :
Term::ReadKey May be more appropriate than getc.
Anyway you got the idea...
UPDATE2 :
This answer is for oaklander, I replied to the wrong post. Apologizes (especially to Hotshot).

"Only Bad Coders Code Badly In Perl" (OBC2BIP)

Replies are listed 'Best First'.
Re (tilly) 3: Output question
by tilly (Archbishop) on Jan 04, 2002 at 09:32 UTC
    Don't assume that more is the right pager to use. It irritates those of us who joke that less is more. Here is a better way:
    use vars qw(%Config); use Config qw(%Config); print "My pager is $Config{pager}\n";
Re: Output question
by oaklander (Acolyte) on Dec 26, 2001 at 19:10 UTC
    arhuman,

    Thanks for you quick response and answer to my question! It now works the way I wanted.

    Can you please explain what the 'getc'is??

    Also If I wanted to use the 'more' command, where would I put it in my script?? I tried several areas and it didnt work.

      You're welcome...

      For the getc you better read the doc (or follow the link) as it will be more accurate and clear than I could ever be.
      (anyway perldoc and/or SuperSearch and/or the camel book, must now be a a reflex for you Perl lover ;-)

      Now for the use of the more command, just forget about using 'more' IN your script, use it the unix way
      (joining several simple but efficient commands to do a complex task...) via pipe.
      Only display the lines on the screen in your script and then using 'more' for the paging part :

      perl yourscript.pl | more


      "Only Bad Coders Code Badly In Perl" (OBC2BIP)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://134393]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others studying the Monastery: (3)
As of 2024-04-16 18:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found