1#!/bin/sh
2#
3# Printer filter for postscript or plain text with output to a HP laserjet.
4# This requires two packages to be installed:
5#
6#	/usr/dports/print/ghostscript9 (or later)
7#	/usr/dports/print/enscript
8#
9# lp|ps|local line printer:\
10#	:sh:mx#0:sf:\
11#	:lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:\
12#	:if=/usr/local/libexec/if-gs-ljet4:
13
14read first_line
15first_two_chars=`expr "$first_line" : '\(..\)'`
16
17if [ "$first_two_chars" = "%!" ]; then
18   #
19   #  PostScript job, print it.
20   #
21   (echo "$first_line" && cat && exit 0) | \
22	gs -q -sPAPERSIZE=letter -sDEVICE=ljet4 -sOutputFile=%stdout% -
23   # printf "\004"
24   exit 2
25else
26   #
27   #  Plain text, convert it, then print it.
28   #
29   ( echo "$first_line"; cat ) | /usr/local/bin/enscript -G | \
30	gs -q -sPAPERSIZE=letter -sDEVICE=ljet4 -sOutputFile=%stdout% -
31   # printf "\004"
32   exit 2
33fi
34