--- /dev/null
+## The Super Quick Guide to LPRng Printcaps
+## Patrick Powell <papowell@lprng.com>
+## 23 Dec 2000
+# VERSION=3.7.4
+#
+# This printcap provides a very simple way to configure your UNIX
+# or Linux or MS or Apple LPRng printcap. There are several choices
+# to make and some default printcap entries to use. These handle
+# the majority of printing setups for most simple setups.
+#
+# Step 1: Send all jobs to LPD running on Local Host or Remote Host?
+#
+# If you want to send all jobs to the LPD spooler running on the localhost
+# uncomment the following line. This is the normal case for most
+# single user systems with attached printers or simple network printers.
+#
+#lp:force_localhost:client
+#*:force_localhost:client
+# [Translation:
+# lp - default print queue . If you do not want 'lp' to be the
+# to be the default print queue, set it to the appropriate value
+# * - wildcard matches all print queue names, and simply causes
+# the supplied name to be used as the destination print queue.
+# :force_localhost - connect to the server running on the localhost
+# :client - for lpr,lpq,lprm, and lpc to use to get information
+# ]
+#
+# If you want to send all jobs to the LPD spooler running on REMOTEHOST
+# then uncomment the next line and change REMOTEHOST to the IP
+# address or Fully Qualified Domain Name of REMOTEHOST. If you are
+# using this entry then your printcap configuration is complete
+# and you can skip the other steps.
+#
+#lp:force_localhost@:client:rm=REMOTEHOST
+#*:force_localhost@:client:rm=REMOTEHOST
+# [Translation:
+# lp - default print queue . If you do not want 'lp' to be the
+# to be the default print queue, set it to the appropriate value
+# * - wildcard matches all print queue names, and simply causes
+# the supplied name to be used as the destination print queue.
+# :force_localhost@ - do not connect to localhost, use :rm information
+# :client - for lpr,lpq,lprm, and lpc to use to get information
+# :rm=REMOTEHOST - the IP address or Fully Qualified Domain Name of
+# REMOTEHOST. All jobs will be sent there
+# ]
+#
+# Step 2: Default options?
+#
+# The printcap entry below sets defaults. Add any other default option
+# you want here.
+#
+.common:
+ :sd=/var/spool/lpd/%P
+ :sh:sf:mx=0:mc=0
+#
+# [Translation:
+# .common - the period (.) causes LPRng to treat this as a 'information
+# only entry. This idea was stolen^H^H^H^H^H^H borrowed from the Unix
+# 'hidden' file convention, i.e. file names starting with a period
+# are not displayed by 'ls' or matched by '*'
+# :sd=/var/spool/lpd/%P
+# Spool queue directory for temporary storage of print jobs. The
+# %P will be expanded with the print queue name. Each print queue
+# MUST have a different spool queue directory, and by using %P
+# this is guaranteed.
+# :sh - suppress banners or header pages
+# :sf - suppress form feeds
+# :mx=0 - maximum job size in K bytes (0 is unlimited)
+# :mc=0 - maximum number of copies (0 is unlimited)
+# ]
+#
+# Step 3: Define print queues
+#
+# A) printer on parallel port (i.e. - /dev/lpt0)
+#lp:lp=DEVICE:tc=.common:server
+# Example:
+# lp:tc=.common:server:lp=/dev/lpt0
+# [Translation:
+# lp - name of the print queue
+# :tc=.common - include the options in the .common printcap entry
+# the 'tc' options will be put at the START of the printcap entry
+# :server - marked as only for lpd server use
+# :lp=/dev/lpt0 - open and write the print job to /dev/lpt0
+# ]
+#
+# B) printer on serial port
+# Use the :stty to set the speed, bits, and parity using 'stty(1)'
+# options. Note: almost all printers use 8 bits, no parity.
+#lp:tc=.common:server:lp=DEVICE:stty=STTY OPTIONS
+# Example:
+# lp:tc=.common:server:lp=/dev/tty0:stty=19200 cs8 -parenb
+# [Translation: lp, :tc, :server, :lp as for A) above.
+# :stty= options used to configure serial port after
+# opening it
+# ]
+#
+# C) printer on Network Print Server (i.e. - HP JetDirect)
+# connecting via a TCP/IP socket. IPADDR is IP address or Fully Qualified
+# Domain Name of the print server, PORT is the TCP/IP port.
+#
+# HP JetDirect uses port 9100 by default.
+#
+# Warning: check the Network Print Server documentation for correct
+# port number. Most non-HP Network Print Servers and non-HP printers
+# do not use port 9100.
+#
+#lp:tc=.common:server:lp=IPADDR%PORT
+# Example:
+# lp:tc=.common:server:lp=10.0.0.2%9100
+# [Translation: lp, :tc, :server as for A) above.
+# lp=10.0.0.2%9100 - open a connection to 10.0.0.2, port 9100
+# and write the print job to this port.
+# ]
+#
+# D) printer on Network Print Server (i.e. - HP JetDirect or LPD server)
+# connecting via the LPD print protocol. QUEUE is the name of the
+# print queue and IPADDR is the IP address or Fully Qualified Domain
+# Name of the print server.
+#
+# Warning: check the Network Print Server documentation for correct
+# QUEUE name. The 'lp' queue is used on the HP JetDirect as the
+# default print queue. If there are multiple printer ports on the
+# device then the QUEUE name is used to select the port.
+#
+# Warning: Using this protocol with JetDirect units will almost always
+# cause a 'banner page' to be generated by the JetDirect unit.
+# Check the HP documentation on how to disable this most annoying feature.
+# Usually you simply telnet to the JetDirect and then use the
+# simple configuration menu presented when you first make connection.
+#
+#lp:tc=.common:server:lp=QUEUE@IPADDR
+#
+# Example:
+# lp:tc=.common:server:lp=lp@10.0.0.2
+# [Translation: lp, :tc, :server as for A) above.
+# lp=lp@10.0.0.2 - open a connection to 10.0.0.2, port 515,
+# and use the RFC1179 (LPD) protocol to transfer the job
+# to the QUEUE print queue.
+# ]
+#
+# Step 4: Format Conversion (Filter) Required?
+#
+# You may discover that your printer does not support PostScript or
+# requires a special initialization to be done. This is handled
+# by a filter program. The 'ifhp' filter program is supplied with
+# LPRng and supports a very wide number of printers. If you need
+# to have a filter, then add the following lines to the printcap
+# entry:
+#
+# :filter=PATH_TO_IFHP_FILTER
+# :ifhp=IFHP_OPTIONS
+#
+# Note: the LPRng :filter= option replaces the legacy BSD lpd options
+# :if, :vf, ... options that specify filters for 'f' format, 'v' format,
+# and so forth (yes, yes, :if is for 'f' format, don't ask).
+# The :filter option specifies a default filter for all job formats.
+# Most modern filters such as IFHP, Magikfilter, and RedHat print
+# filters are smart enough to determine the job format and perform
+# the appropriate conversions.
+#
+# Examples:
+#
+# lp:tc=.common:server:lp=/dev/lpt0
+# :filter=/usr/libexec/filters/ifhp
+# :ifhp=model=hp4simx
+#
+# lp:tc=.common:server:lp=10.0.0.2%9100
+# :filter=/usr/libexec/filters/ifhp
+# :ifhp=model=hp4simx
+#
+# lp:tc=.common:server:lp=lp@10.0.0.2
+# :filter=/usr/libexec/filters/ifhp
+# :ifhp=model=hp4simx
+#
+# IFHP Options:
+# For almost all simple configurations you will only need to
+# supply the model of printer that you have attached. See the
+# /etc/ifhp.conf file for a complete listing of supported models.
+# The default model is for an HP Laserjet 4 SiMx, which supports
+# PostScript, PCL, and PJL.
+#
+# Warning:
+# IF:
+# Your model of printer normally provides status and error
+# reporting over a TCP/IP link
+# AND:
+# You are using lp=IPADDR%PORT to connect to the printer
+# THEN:
+# The IFHP filter will normally expect to have status information
+# returned by the printer to tell it that the printer is in working
+# condition. This will have a small but significant overhead
+# on job throughput, but you will also get error information.
+#
+# HOWEVER:
+# If the printer SHOULD return status but CANNOT due to either
+# the printer hardware configuration or it is on a unidirectional
+# and not bidirectional parallel printer port, then you must use
+# :model=...,status@
+# to tell the IFHP filter not to expect status information.
+#
+# Example:
+# lp:tc=.common:server:lp=10.0.0.2%9100
+# :filter=/usr/libexec/filters/ifhp
+# :ifhp=model=hp4simx,status@
+#
+# Step 5: Queue creation and LPD restart
+# Run the following commands to create your spool queues and
+# then tell the LPD server that it should use them:
+# su
+# checkpc -f
+# lpc reread