From owner-freebsd-questions Thu Sep 25 02:41:58 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id CAA08377 for questions-outgoing; Thu, 25 Sep 1997 02:41:58 -0700 (PDT) Received: from htsa.htsa.hva.nl (htsa.htsa.hva.nl [145.92.3.33]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id CAA08341 for ; Thu, 25 Sep 1997 02:41:55 -0700 (PDT) Received: from htsa.hva.nl (asd09-09.dial.xs4all.nl) by htsa.htsa.hva.nl with ESMTP (1.39.111.2/16.2) id AA272890468; Thu, 25 Sep 1997 11:41:08 +0200 Message-Id: <342A31D8.5ECDCE4F@htsa.hva.nl> Date: Thu, 25 Sep 1997 11:41:46 +0200 From: Robin Huiser Reply-To: robinh@htsa.hva.nl X-Mailer: Mozilla 4.02b7 [en] (X11; I; FreeBSD 2.2.2-RELEASE i386) Mime-Version: 1.0 To: rknebel@mail.microserve.net Cc: freebsd-questions@FreeBSD.ORG Subject: Re: printer References: <199709242157.HAA25783@smmcroute.smmc.qld.edu.au> <19970924195634.48713@my.domain> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-questions@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk rknebel@mail.microserve.net wrote: > Hi, > I have freebsd 2.2.2 and am trying to get my printer to work. > I have a HP 660c. > Whenenver I try to print something the printer prints out three blank > pages and then stops. > Can anyone get me started on a solution? > Thanks Alot > > -- > Rick Knebel > rknebel@mail.microserve.net Hello Rick! It seems that we have the same printer! I have written a few scripts allowing you to print postscript directly to your printer! It also recognises if you are sending plain text, binary printer-format or postscript! First create in /etc/printcap the following line: deskjet|lp|HP Deskjet 694-C bubblejet printer:\ :sh:sd=/var/spool/lpd/deskjet:lp=/dev/lpt0:mx#0:\ :if=/usr/local/libexec/if-deskjet: * It tells FreeBSD that you have a printer connected to /dev/lpt0 (LPT1). * Your spool-directory is /var/spool/lpd/deskjet (CREATE IT!!!) * Because postscript jobs are sometimes of a very *LARGE*,size (For example if you print a picture with xv), I have set the mx-field to 0. (No size limits when printing a job). * The filter is in /usr/local/libexec/if-deskjet (CREATE IT!!!) Filter: if-deskjet -- BEGIN HERE -- #!/bin/sh # # if-hp - Postscript level 3 and text input filter for lpd # Installed in /usr/local/libexec/if-hp # # Textmode: simply copies stdin to stdout. Ignores all filter arguments # Postscript: run gs to convert the text you want to print # Add a formfeed after each job # # Some handy functions # fatal() { echo "$@" 1>\&2 exit 2 } # # Set LF to LF+CR # printf "\033\&k2G" || fatal "Cannot initialize printer" # # Read first two characters of the file # read first_line first_two_chars=`expr "$first_line" : '\(..\)'` if [ "$first_two_chars" = '%!' ]; then # # It's postscript; use Ghostscript to scan-convert and print it # /usr/local/bin/gs -dSAFER -dNOPAUSE -sPAPERSIZE=a4 -q -sDEVICE=cdj550 -sOutpu tFile=- - && exit 0 else # # Plan text or HP/PCL. so just print it directly; print a form # at the end to eject the last page # echo $first_line && cat && printf "\f" && exit 0 || exit 2 fi exit 2 -- CUT HERE -- Well, if you have any questions, you know where to find me! Greets, Robin Huiser ,,, (o o) ()========================oOO==(_)==OOo==========================() Robin Huiser HVA Faculteit Electrotechniek & Informatica E-mail: robinh@htsa.hva.nl Important Unix command: echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq' | dc