Debian package: psptools
File: /usr/bin/psplpr

Debian-

This is really an upstream issue except the 
maintainer is probably the best to know this.

The psplpr program works after the fix in the
command line parser section about line 820.
After the fix, the option is required to be in
a form -Pprinter and stops if -P printer is
used. The script cannot identify the correct
printer if the wrong option is used. The
additional code below can be added to allow
the -P printer type option to work also. 

The addition is not critical and mainly
expands functionality so ... while the bug
is being fixed anyway, please try the
addition. Previously, the environment
variable PRINTER had to exist or else 
the lp printer was used, if any at all.
The -P option comes from lpr when used as a
filter and is not listed in the man page. 

Now the -P option finally works and the
script can identify the printer and 
find the PPD file. The final postscript output 
is fine after the program finally works. :-)

Thanks,
[EMAIL PROTECTED]



##### after these lines in /usr/bin/psplpr ... ###

    } elsif ($args[0] eq "-${opt_prefix}o"
        || $args[0] eq "--${lopt_prefix}output") {
        $opt_output = $args[1];
        usage(1) if (!$opt_output);
        shift @args;

###### add this about here for the -P printer form ###

}elsif ($args[0] eq "-${opt_prefix}P") {
        $printer = $args[1];
        shift @args;
    print STDERR "$myname: found command option -P $printer\n";
        $used_prog_lpr = $prog_lpr;

######## while fixing these bugs as in my previous email ##########

#    } elsif ($args[0] eq "-${lopt_prefix}lpr") {  # <-- this line is bad
} elsif ($args[0] eq "--${lopt_prefix}lpr") {      # <-- this finally works
        $used_prog_lpr = $prog_lpr;
#    } elsif ($args[0] eq "-${lopt_prefix}lp") {   # <-- same problem
} elsif ($args[0] eq "--${lopt_prefix}lp") {       # <-- this works
        $used_prog_lpr = $prog_lp;

## that's all of the change ; the -Pprinter form is already in the script ###

:-)

 

Reply via email to