summaryrefslogtreecommitdiff
path: root/dviware/quicspool/man/quicspool.l_backup
blob: 495f42d4c1e15190868f3117cdaadcc0fc7c5d7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
.\" $Header: quicspool.l.backup,v 1.2 88/02/03 08:55:18 simpson Exp $
.\" $Log:	quicspool.l.backup,v $
.\" Revision 1.2  88/02/03  08:55:18  simpson
.\" added tpic support
.\" 
.\" Revision 1.1  88/01/15  12:58:40  simpson
.\" initial release
.\" 
.\" Revision 0.1  87/12/11  17:56:59  simpson
.\" beta test
.\" 
.de BD
.nf
.in +3m
.sp
..
.de ED
.fi
.in -3m
.sp
..
.if t .ds TX T\h'-.1667m'\v'.22m'E\h'-.125m'\v'-.22m'X
.if n .ds TX TeX
.if t .ds LX L\v'-.22m'a\v'.22m'T\h'-.1667m'\v'.22m'E\h'-.125m'\v'-.22m'X
.if n .ds LX LaTeX
.TH QUICSPOOL 7 TRW
.UC
.SH NAME
quicspool \- idiosyncracies of the QMS filters for the Berkeley 
spooling system
.SH ORIGIN
TRW
.SH DESCRIPTION
.I Quicspool
is a set of filters for driving QMS or Talaris laser printers under the
Berkeley spooling system.
The filters have some features that are not documented in the 
manual pages.  These features are described here.
.PP
Raw input files should be sent to
.IR lpr (1)
with the 
.B -l 
option.
The raw option turns off translation of line feeds into 
carriage-return/line-feed combinations.
Since the data sent to the printer is scanned by 
.IR lex (1),
the ASCII null character should not be sent.
.PP
The \*(TX and device-independent troff (ditroff)
printer filters recognize certain commands that are not part of standard
\*(TX and ditroff.
\*(TX recognizes 
the ``\especial'' command when it is
given the keyword 
``overlay''
followed by a file in parentheses.  
This file could possibly have
been generated by a graphics package and should be a sequence of QUIC
commands to dump out to the printer at that point in the \*(TX
document.
For example, the \*(TX command
.BD
\especial{overlay(\estring~/quicfile)}
.ED
would cause the filter to look for the file
``quicfile''
in the user's home directory and output it to the printer at that
point.  
The ``\estring'' control sequence is necessary or \*(TX expands ~ into
.BD
\epenalty \e@M \e
.ED
which is not what you want.
Ditroff also recognizes the ``overlay'' keyword but it has a different syntax.
If you insert the command
.BD
\e!x X overlay(~/quicfile)
.ED
in your ditroff document, the contents of 
``quicfile''
are dumped to the printer at that point.
.PP
Tilde escapes are recognized just as in the C shell; that is, names may
be given after the tilde.  Spaces are ignored in the string
except within the keyword 
``overlay''
or within the file name where they would serve as delimiters.
Relative pathnames are not recommended since the filters run in the
spooling directory of the printer.
To preserve protections, the filters switch to the uid of the user
after they begin execution.
.PP
The \*(TX driver also provides support for 
.IR tpic ,
a graphics drawing package for \*(TX that is equivalent to the
.IR pic (1)
program for AT&Ts device-independent troff.
Tpic was written by Tim Morgan at UC Irvine (morgan@ics.uci.edu).
.PP
The \*(TX user can use his or her own fonts, possibly created by
METAFONT, by giving a full pathname to \*(TX's font definition command or
putting the appropriate fonts in the path of the
TEXFONTS environment variable.  Normally, \*(TX uses this path to
search for \*(TX Font Metric (tfm) files for font width information.
This path is also searched by the \*(TX filter for packed font raster files
(pk format).
A font file can be converted from the generic font format created by
METAFONT to the pk format with the program
.IR gftopk (1).
Since the filter process is not an ancestor of the user's login
shell, its execution environment
is that of root.  Consequently, the filter searches the ``.profile'' file
(if you are using the Bourne or Korn shell) or the ``.cshrc'' and ``.login''
files (if you are using the C shell) for the TEXFONTS environment
variable.
The filter looks for a line of the form
.BD
TEXFONTS=...
.ED
or
.BD
setenv TEXFONTS ...
.ED
in the appropriate file and uses the string represented by the
ellipses as the path for TEXFONTS.
The filter recognizes continuation lines in the file but the path
should not be surrounded by quotes since it does not do shell
interpretation.  Tilde escapes and the prefix $HOME are recognized in
a shell pathname.  There should be a single space before and after
the word ``TEXFONTS'' when you are using the C shell.
If the user is from a remote host, then obviously the environment
variable scheme will not work so no files are searched.  Also, fonts
that are not loaded from the system font directory are deleted at the
completion of every job.  This way, users will not accidently use someone
else's previously loaded font.
.PP
There are two queues for each printer\-one for portrait mode and one for
landscape mode.  The landscape queue normally has the same name as the portrait
queue but the landscape queue's name is suffixed with an `l'.
Suppose you have a portrait queue called 
``grumpy''
and a corresponding landscape queue
``grumpyl''.
If you queue a file to the grumpy queue and a file is already printing in the
grumpyl queue, then when you do an
.IR lpq (1)
you will get a message
.BD
waiting for grumpy to become ready (offline ?)
.ED
stating that the grumpy job cannot begin until the grumpyl job is completed.
You can list the grumpyl queue using the 
.B -P 
flag of lpq.
.SH \*(TX FONTS
It is important when using \*(TX to make sure that the size of the PK font
you are requesting exists.  
If the size does not exist, then the closest size is selected.  This
can cause some strange output when a document is printed if you
use a font that doesn't exist.
Fonts normally have a name that looks something like
.BD
font\fId\fP.\fIm\fPpk
.ED
where ``font\fId\fP'' is the name of the font you give to \*(TX, 
.I d
is the design size of the font (i.e., the size the font looks best
at) and
.I m
is the magnification.
Normally fonts are designed with a particular size in mind.
For example, although cmr10.200pk and cmr5.400pk are both ten points
high on a 200 dots per inch device, the cmr5 font is a magnified five
point font that looks crummy at twice its regular size.  
The version designed for ten points has its characters thinned out
and looks better at the size it was intended for.
Some fonts look good at any magnification and these fonts normally
have the
.I d
missing from the file name.
.PP
The equation 5\fIm\fP/1.5, where
.I m
is as above,
gives the appropriate scale factor if you wish to declare a particular font
to \*(TX.
For example, if the
largest cmr10 font is cmr10.746pk (i.e., \emagstep5), then you 
can declare
this font in \*(TX by
.BD
\efont\ebigfont=cmr10 scaled 2487
.ED
If you wish to declare a font using \*(TX's ``at \fIsize\fP'',
you would use the equation \fIdm\fP/300.
For example, you could also declare the cmr10 font by
.BD
\efont\ebigfont=cmr10 at 24.866pt
.ED
.SH GENERIC QUEUEING
Lpr queues to a specific printer.
If you wish to queue to any idle printer, you can use the
.I glpr
script.
When your site has multiple printers, this script will look for an idle QMS
printer if there is one, and queue to it.
If it cannot find an idle printer, it will attempt to queue to a printer that
is not stopped or disabled.
If you wish to queue in landscape mode,
give the
.B -L
option to the script.
There is also a 
.I glpq 
script that prints out the jobs in each queue.
.SH TROFF SCRIPTS
There are two versions of troff on the market: C/A/T troff for the GSI CAT-4
phototypesetter
and AT&T's ditroff,
which supports a variety
of devices.
The quicspool software supports the QMS printer for both versions of troff.
The naming convention for your 
troff varies depending on whether you have purchased
ditroff or not.
If you have a stock BSD system and you have not purchased
ditroff, then the C/A/T troff will be named ``troff\|''.  If you have purchased
ditroff, then the C/A/T troff will be named ``otroff\|''
and ditroff will be named ``troff\|''.
The C/A/T troff corresponds to the 
.B -t
option of lpr and ditroff corresponds to the 
.B -n
option.
Unfortunately, you can not simply pipe output from either troff directly
into lpr and get correct output.
Instead, use the script
.I qtroff
if you wish to use the C/A/T troff and
.I ditroff
if you wish to use the device-independent troff.
You needn't pipe the output from these scripts into lpr.
The scripts queue the output automatically.
.PP
Since both troff and lpr have some conflicting options, the scripts need
to resolve who to pass the flags to on the command line.
The flags are passed as follows:
.sp
.in +1i
.ta +1i
to otroff	\fIo\fP,\fIn\fP,\fIm\fP,\fIR\fP,\fIi\fP,\fIq\fP,\fIf\fP,\fIb\fP,\fIa\fP,\fIp\fP,\fIF\fP
.br
to ditroff	\fIo\fP,\fIn\fP,\fIm\fP,\fIR\fP,\fIi\fP,\fIq\fP,\fIz\fP,\fIa\fP,\fIT\fP
.br
to lpr	\fIP\fP,\fI#\fP,\fIC\fP,\fIJ\fP,\fI1\fP,\fI2\fP,\fI3\fP,\fI4\fP,\fIw\fP,\fIl\fP,\fIt\fP,\fId\fP,\fIg\fP,\fIv\fP,\fIc\fP,\fIr\fP,\fIM\fP,\fIh\fP,\fIs\fP,\fIL\fP
.in -1i
.sp
Notice that 
.B -m 
option of lpr 
and the 
.B -r
option of troff
are not available.
If you wish to pass these two options on to lpr or troff, 
you can use the capital
letters
.B -M
and 
.BR -R ,
respectively.
Since these scripts call
.I glpr
you can give the option
.B -L
to get landscape mode output.
.PP
If you are running 
.IR eqn (1)
or 
.IR pic (1)
and you are running ditroff, you will need to give the
.B -Tqms
flag to eqn and/or pic.
.IR Tbl (1) 
does not need such a flag.
If your system administrator has not installed the appropriate changes to
your ditroff version of eqn and pic, try using the
.B -TX9700
flag instead.
If you have ditroff and you wish to pipe the output from eqn to 
.I qtroff 
instead of 
.IR ditroff , 
you will need to give the 
.B -Tcat
option to eqn to generate output for the C/A/T phototypesetter.
.PP
The bell system logo (\e(bs) has been replaced by the TRW logo (\(bs)
in both versions of troff.
.SH FILES
.nf
.ta \w'--WBTEX--     'u
--WBTEX--	\*(TX write-black engine font directory
--WWTEX--	\*(TX write-white engine font directory
--OFONT--	old troff font directory
--DIFONT--	device independent troff font directory
--FILTER--	filter directory
.fi
.SH AUTHOR
Scott Simpson
.SH SEE ALSO
csh(1), eqn(1), gftopk(1),
ksh(1), lex(1), lpq(1), lpr(1), lprm(1), mf(1), pic(1), sh(1), tbl(1),
tex(1), troff(1), lpc(8)
.SH BUGS
Shading of ellipses in  
.I tpic 
does not work.