#!/usr/bin/perl -w
open LPR, "|lpr -P Speedy >/dev/null 2>&1"
or die "Can't open printer: $!";
print LPR $_ . "\n" for qw/AAA BBB CCC DDD/;
print LPR "\f";
print LPR "EEE", "\n";
close LPR
__END__
Speedy prints everything on one page:
AAA
BBB
CCC
DDD
<-- what happened to form feed?
EEE
I also tried the -p and -l (ell, not one) switches, and watched the process using Print Center. With -p (pretty print header) I saw a message flash by saying "nstextopdf pretty print not supported", and then the above printed (on one page). With -l, a message flashed by saying "Sending print file, 21 bytes", but *nothing* printed.
If printed to STDOUT, the rectangle junk character printed for the \f is correctly identified by BBEdit as a form feed.
So this question is not about whether I (or the OP) can get something to print -- it's specifically about lpr printing a form feed, known as \f in Perl. As the above shows, \n prints newlines. I also tested \t, and get tabs just fine.
Secondarily, at least for me, is there more to know about darwin's lpr here?
Thanks.
On Monday, February 17, 2003, at 07:59 AM, drieux wrote:
On Sunday, Feb 16, 2003, at 14:52 US/Pacific, Tom McDonough wrote:On 2/15/03 21:56, "drieux" <[EMAIL PROTECTED]> wrote:LPR is the line printer and it is OPEN. My program is printing continuousOn Saturday, Feb 15, 2003, at 14:40 US/Pacific, Tom McDonough wrote:I'm trying to force a form feed using perl 5.6 and os x.2 without using the format command.
lines and I want to control the page break.
I presume that you are using a printer with a tractor feed? As opposed to the laser-printer style? yes? and that it is locally attached?Have you pulled out the manual for it, as to what it uses for 'control sequences'. you may want to read man printcap Since what you want to ship to the printer, if it is defined in the 'ff' argument, is what you will need to ship to the printer to make it follow instructions. I think what the '\f' is talking about is the 8-bit pattern 007 or the sixteen bit pattern 017...
- Bruce __bruce__van_allen__santa_cruz__ca__