psf



psf(8)                             Netatalk                             psf(8)




NAME

       psf - PostScript filter


SYNOPSIS

       psf  [  -n  name ] [ -h host ] [ -w width ] [ -l length ] [ -i indent ]
       [-c]


DESCRIPTION

       psf is an lpd filter for PostScript printing. psf interprets  the  name
       it  was  called with to determine what filters to invoke. First, if the
       string ‘‘pap’’ appears anywhere in the name, psf invokes pap to talk to
       a  printer  via  AppleTalk.  Next,  if  the string ‘‘rev’’ appears, psf
       invokes psorder to reverse the pages of the job. Finally,  if  psf  was
       called with a filter’s name as the leading string, it invokes that fil-
       ter. If there is no filter to run, psf examines the magic number of the
       input, and if the input is not PostScript, converts it to PostScript.


KLUDGE

       In  the  default  configuration,  psf  supports  two kludges. The first
       causes psf to check its name for the letter  ‘m’.  If  this  letter  is
       found  and accounting is turned on, psf calls pap twice, once to get an
       initial page count and to print the job, and  another  time  to  get  a
       final  page  count.  This is a work-around for bugs in a variety of PAP
       implementions that cause printers to never properly close the PAP  out-
       put file. A notable example is any printer by Hewlett-Packard.

       The second kludge causes psf to examine its name for the letter ‘w’. If
       this letter is found and accounting is turned on, psf  calls  pap  with
       the  -w  flag.  This flag causes pap to wait until the printer’s status
       contains the string ‘idle’.  Once this string  is  found,  the  job  is
       printed  as  normal. This kludge is a work-around for printers, notably
       Hewlett-Packard’s LaserJet IV, which will report a page count  while  a
       previous jobs is still printing.


EXAMPLE

       The  sample  printcap  entry  below  invokes  psf  to print text files,
       PostScript files, troff’s C/A/T output, and TeX’s  DVI  output,  to  an
       AppleTalk connected LaserWriter Plus. Since the LaserWriter Plus stacks
       pages in descending order, we reverse the pages  and  print  the  burst
       page last.


       laser|lp|LaserWriter Plus on AppleTalk:\
           :sd=/usr/spool/lpd/laser:\
           :lp=/usr/spool/lpd/laser/null:\
           :lf=/var/adm/lpd-errs:pw#80:hl:\
           :of=/usr/libexec/ofpap:\
           :if=/usr/libexec/ifpaprev:\
           :tf=/usr/libexec/tfpaprev:\
           :df=/usr/libexec/dfpaprev:

       Note  that  if  the  host in question spools to more than one AppleTalk
       printer, /dev/null should not be used for the lp capability. Instead, a
       null  device should be created with mknod for each printer, as has been
       done above.

       Finally, there is a file in the spool directory,  /var/spool/lpd/laser,
       called .paprc, which pap reads for the AppleTalk name of the printer.


SEE ALSO

       psorder(1), printcap(5), lpd(1), mknod(1), pap(1).




2.0.2                             17 Dec 1991                           psf(8)

Man(1) output converted with man2html