#! /usr/local/bin/magicfilter
#
# Magic filter setup file for 1200  dpi generic PostScript printers
#
# THIS FILE IS UNTESTED!
#
# This file is in the public domain.
#

# PostScript
0	%!		cat
0	\004%!		cat 

# TeX DVI
0	\367\002	ffilter	/usr/bin/dvips  -D 1200  -R -q -F -f 

# compress'd data
0	\037\235	pipe	/bin/gzip  -cdq 

# packed, gzipped, frozen and SCO LZH data
0	\037\036	pipe	/bin/gzip  -cdq 
0	\037\213	pipe	/bin/gzip  -cdq 
0	\037\236	pipe	/bin/gzip  -cdq 
0	\037\240	pipe	/bin/gzip  -cdq 

# troff documents
0	.\?\?\040	filter 	/usr/bin/groff  -Tps -t -mandoc 
0	.\\\"		filter 	/usr/bin/groff  -Tps -t -mandoc 
0	'\\\"		filter 	/usr/bin/groff  -Tps -t -mandoc 
0	'.\\\"		filter 	/usr/bin/groff  -Tps -t -mandoc 
0	\\\"		filter 	/usr/bin/groff  -Tps -t -mandoc 

# ditroff
0	"x T ps"	filter 	/usr/bin/grops 
0	"x T dvi"	pipe	/usr/bin/grodvi 
0	"x T ascii"	reject	Cannot print ASCII ditroff files.
0	"x T latin1"	reject	Cannot print Latin-1 ditroff files.
0	"x T lj4"	reject	Cannot print LaserJet 4 ditroff files.

# Portable bit-, grey- and pixmaps
0	P1\n		filter 	/usr/bin/pnmtops  -scale 1000 -dpi 1200  2>/dev/null 
0	P2\n		filter 	/usr/bin/pnmtops  -scale 1000 -dpi 1200  2>/dev/null 
0	P3\n		filter 	/usr/bin/pnmtops  -scale 1000 -dpi 1200  2>/dev/null 
0	P4\n		filter 	/usr/bin/pnmtops  -scale 1000 -dpi 1200  2>/dev/null 
0	P5\n		filter 	/usr/bin/pnmtops  -scale 1000 -dpi 1200  2>/dev/null 
0	P6\n		filter 	/usr/bin/pnmtops  -scale 1000 -dpi 1200  2>/dev/null 

# HP Printer Control Language (PCL) -- assume start with reset code
0	\033E\033	reject	Cannot print PCL files on this printer. 

# HP Printer Job Language (PJL)
0	\033%-12345X	reject	Cannot print PJL files on this printer. 
0	"@PJL "		reject	Cannot print PJL files on this printer. 
0	@PJL\t		reject	Cannot print PJL files on this printer. 
0	@PJL\r		reject	Cannot print PJL files on this printer. 
0	@PJL\n		reject	Cannot print PJL files on this printer. 

# GIF files
0	GIF87a		pipe	/usr/bin/giftopnm  2>/dev/null
0	GIF89a		pipe	/usr/bin/giftopnm  2>/dev/null

# JFIF (JPEG) files
0	\377\330\377\340\?\?JFIF\0	pipe	/usr/bin/djpeg  -pnm

# TIFF files (the last two bytes of the "magic" is really a version number;
# but the magic is really lame and as far as I have understood the version
# number has never changed and never will, so we include it.)
0	MM\0\x2a	pipe	/usr/bin/tifftopnm  2>/dev/null
0	II\x2a\0	pipe	/usr/bin/tifftopnm  2>/dev/null

# BMP files (even lousier magic -- Microsoft strikes again!)
0	BM\?\?\?\?\?\?\?\?\?\?\?\?\x0c	pipe	\
	/usr/bin/bmptoppm  2>/dev/null
0	BM\?\?\?\?\?\?\?\?\?\?\?\?\x40	pipe	\
	/usr/bin/bmptoppm  2>/dev/null
0	BM\?\?\?\?\?\?\?\?\?\?\?\?\x28	pipe	\
	/usr/bin/bmptoppm  2>/dev/null

# Sun rasterfiles
0	\x59\xa6\x6a\x95 pipe	/usr/bin/rasttopnm  2>/dev/null

# SGI Imagelib (IRIS RGB) files
0	\x1\xda		pipe	/usr/bin/sgitopnm  2>/dev/null
0	\xda\x1		pipe	/usr/bin/sgitopnm  2>/dev/null

# FIG files; reported by Steven P. Hill <sph@uscbu.ih.att.com>
0	#FIG		reject	Cannot print FIG files on this printer.

#
# Standard rejects... things we don't want to print
#

# Various archive formats
257	ustar\0		reject	Attempted to print a tar file.
257	"ustar  \0"	reject	Attempted to print a tar file.
0	07070		reject	Attempted to print a cpio file.
0	PK\3\4		reject	Attempted to print a zip file.
20	\xdc\xa7\xc7\xfd reject	Attempted to print a zoo file.

# Binaries (Linux): reject with email message
0	\013\1d\0	reject	Attempted to print a compiled binary.
0	\100\1d\0	reject	Attempted to print a compiled binary.
0	\007\1d\0	reject	Attempted to print a compiled binary.
0	\314\0d\0	reject	Attempted to print a compiled binary.
0	\177ELF		reject	Attempted to print an ELF object.
0	\007\001\0	reject	Attempted to print an object file.
216	\021\001\0\0	reject	Attempted to print a core dump file.
0	!<arch>		reject	Attempted to print an archive.
0	=<ar>		reject	Attempted to print an archive.

# Don't confuse this one with troff!
0	.snd		reject	Attempted to print Sun/NeXT audio data.

# optimistic troff magic
0	.		filter 	/usr/bin/groff  -Tps -t -mandoc 
# wacko troff magic
0	'''		filter 	/usr/bin/groff  -Tps -t -mandoc 

# Default entry -- for normal (text) files.  MUST BE LAST.
# default		reject	Cannot print text files on this printer.
# default		pipe	mpage -bA4 -o -1 
default			pipe    /usr/bin/nenscript  -B -p-
# default		pipe	/usr/bin/a2ps --columns=1 -B -o -
