:
##########################################################################
# Shellscript:	drucke - Textdateien (aufbereitet) ausdrucken	
# Versionsnr :	1.5
# Autor      :	Heiner Steven (stv)
# Erstellung :	11.02.94
# SCCS-Kenn. :	@(#) drucke	1.5 04/02/18
##########################################################################
# Beschreibung:
#    o	druckt Datei mit dem Programm "a2ps". Titel werden mit einem
#	Trick auch beim Lesen von stdin moeglich: es wird eine Datei
#	angelegt, deren Name der Titel ist.
#	Nachteil: Sonderzeichen im Dateinamen sind moeglich;
#	der Name kann lang werden...
##########################################################################
# Changes
# 22.03.94 stv	Parameter -t (Title) 0.2
# 19.07.95 stv	Use title even if printing more than one file (0.3)
# 07.11.96 hs	Exit if "cat" fails creating its output file (0.4)
##########################################################################

PN=`basename "$0"`
VER='1.5'

: ${DRUCKER:=lp}
: ${USER:=`expr "\`LANG=C id\`" : 'uid=[0-9]*(\([^\)]*\)).*`}
: ${HOST:=`uname -n`}
: ${BGTEXT:=${FULLNAME:-$USER@$HOST}}

Tmp=${TMPDIR:=/tmp}/druckdatei		# beim Lesen von stdin, oder bei -h
FormatOpt='--interpret=yes --underlay="$BGTEXT" --output=-'
DruckOpt="-s -d${LPDEST:-qadruck}"

while [ $# -gt 0 ]
do
    case "$1" in
    	-h)	Header="$2"; shift;;	# Header
	*)	break;;
    esac
    shift
done

if [ $# -eq 0 ]
then
    trap 'rm -f "$Tmp" >/dev/null 2>&1' 0
    trap "exit 2" 1 2 3 15

     [ -n "$Header" ] && Tmp="$Header"
     cat > "$Tmp" || exit $?
     set -- "$Tmp"
fi

eval "a2ps $FormatOpt ${Header:+--header=\"$Header\"}" "$@" |
	$DRUCKER $DruckOpt
