|
|
1.1 root 1: .\" (c) Copyright 1986 Xerox Corporation
2: .\" All rights reserved.
3: .ds f. maha.1.tbl
4: .\" tbl maha.1.tbl | troff -man
5: .TH MAHA 1 2/11/86
6: .UC 4
7: .tr -\-
8: .\" differences between troff and nroff compensated here:
9: .ie t .ds sc \(sc
10: .el .ds sc section\
11: .ds lq \&"\"
12: .ds rq \&"\"
13: .if t \
14: . ds lq ``
15: .if t \
16: . ds rq ''
17: .SH NAME
18: maha - make and print interpress files
19: .SH SYNOPSIS
20: .B maha
21: [ options ] [ files ]
22: .SH DESCRIPTION
23: .I Maha
24: (maharani-the Interpress version of the program czarina) reads in text
25: files, converts them to interpress format and ships them to an
26: interpress printer. It also performs some simple page formatting.
27: .PP
28: The environment variable MAHA may be used to specify default options.
29: The value of MAHA is parsed as a string of arguments before the arguments
30: that appear on the command line. For example, "MAHA=`-f Classic/8'" sets
31: your default body font to 8 point Classic.
32: .PP
33: In case conflicting options are given, the last option seen takes precidence.
34: Options are processed left to right, first processing any options in the
35: MAHA environment variable, then any options given on the command line.
36: .PP
37: The possible options are:
38: .TP
39: .BI - n
40: Prints output
41: .I n
42: columns per page (note that
43: .I n
44: is limited to one digit)
45: .TP
46: .BI -b \ banner
47: Uses
48: .I
49: banner
50: to label the output. It will appear on the cover page
51: on the line labeled \*(lqDocument\*(rq.
52: .TP
53: .BI -c \ n
54: Causes
55: .I n
56: copies of the output to be printed. The default is 1.
57: .TP
58: .BI -f \ font\ \ \ \ \
59: Sets the font to be used for the body of each page.
60: The default is \*(lqVintage-Printwheel/10\*(rq.
61: .TP
62: .BI -F \ font
63: Sets the font to be used for page headings.
64: The default is \*(lqModern-Bold/12\*(rq.
65: .TP
66: .BI -H \ header
67: Sets the format for page headings to the string
68: .IR header .
69: This overrides the
70: .B -t
71: option.
72: Certain formatting options can be embedded in this string. See the
73: section below entitled \*(lqHeader Format\*(rq.
74: The default header is constructed from the file name, its last
75: modification date, and a page and line number.
76: .TP
77: .BI -h \ header
78: Appends the string
79: .I header
80: to the current header format string. This can be used to append
81: something to the default header.
82: This overrides the
83: .B -t
84: option.
85: .TP
86: .B -l
87: Causes line printer simulation mode to be used: pages will be 66 lines
88: long and headers will be omitted.
89: Turns on the
90: .B -t
91: option.
92: .TP
93: .BI -n \ name
94: Sets the delivery address of your output (the \*(lqFor\*(rq field on the
95: cover sheet) to
96: .IR name .
97: The default is your full name as recorded in the gecos field of the password
98: file (\*(lq/etc/passwd\*(rq).
99: .TP
100: .BI -o \ file\ \ \ \ \
101: The interpress code is written into
102: .IR file .
103: The default is generated from the process i.d. of the program.
104: .TP
105: .BI -P \ printer
106: Directs the interpresss code to
107: .I printer
108: for printing.
109: .TP
110: .B -r
111: Rotates the output 90 degrees on the page (landscape mode).
112: This is good for output that requires a wide page or for program listings
113: when specifying two columns. Some people like the program listings produced
114: by the command \*(lq\fBmaha -2 -r\fP files\*(rq.
115: .TP
116: .B -R
117: Forces portrait mode (default). This overrides the
118: .B -r
119: option. It is useful (for example) if the environment variable MAHA sets
120: .BR -r .
121: .TP
122: .BI -s \ pages
123: Selects pages to be printed.
124: .I Pages
125: may be a single page specification (eg. \*(lq5\*(rq), a range
126: of pages (\*(lq5-10\*(rq),
127: or a list of page specifications (eg. \*(lq3,11-13\*(rq). Note
128: that this syntax is identical to that accepted by the
129: .B -o
130: option of
131: .IR troff .
132: .TP
133: .B -t
134: Causes page headings (titles) to be omitted.
135: .sp
136: .PP
137: .B "Specifying Fonts"
138: .PP
139: The naming scheme for fonts is a slight variant on the universal naming
140: scheme used by interpress. See \*(sc3.2.2 in
141: .I "Interpress Electronic Printing Standard"
142: (\s8XSIS\s0 048404) for a description of universal names.
143: Each identifier of a universal font name is
144: separated by a slash (\*(lq/\*(rq). If the final identifier in
145: the name is nothing more than a series of digits,
146: as in \*(lqClassic/8\*(rq, then it is taken to be a point size. The actual
147: universal name is formed by removing this last identifier.
148: If the last part of the name is not strictly a number, then the
149: point size is assumed to be 10.
150: Since most
151: environments use the same prefix for a universal font name,
152: A standard prefix of several identifiers
153: is prepended to every font name given on the command line.
154: This can be overridden by placing a slash at the front of the given name
155: in which case the universal name is formed by simply removing the slash
156: from the front of the name. Note that the point size calculation mentioned
157: above will still be performed on this type of name.
158: .PP
159: Here are some examples that should clear the air:
160: .sp
161: .TS
162: .if \n+(b.=1 .nr d. \n(.c-\n(c.-1
163: .de 35
164: .ps \n(.s
165: .vs \n(.vu
166: .in \n(.iu
167: .if \n(.u .fi
168: .if \n(.j .ad
169: .if \n(.j=0 .na
170: ..
171: .nf
172: .nr #~ 0
173: .if n .nr #~ 0.6n
174: .ds #d .d
175: .if \(ts\n(.z\(ts\(ts .ds #d nl
176: .fc
177: .nr 33 \n(.s
178: .rm 80 81 82
179: .nr 80 0
180: .nr 38 \wName Given
181: .if \n(80<\n(38 .nr 80 \n(38
182: .nr 38 \wClassic
183: .if \n(80<\n(38 .nr 80 \n(38
184: .nr 38 \wModern/12
185: .if \n(80<\n(38 .nr 80 \n(38
186: .nr 38 \w/Rice/TimesRoman
187: .if \n(80<\n(38 .nr 80 \n(38
188: .nr 38 \w/Rice/TimesRoman/Italic/8
189: .if \n(80<\n(38 .nr 80 \n(38
190: .nr 38 \w/Rice/VileBlob/8/10
191: .if \n(80<\n(38 .nr 80 \n(38
192: .80
193: .rm 80
194: .nr 81 0
195: .nr 38 \wUniversal Name
196: .if \n(81<\n(38 .nr 81 \n(38
197: .nr 38 \wXerox/XC1-1-1/Classic
198: .if \n(81<\n(38 .nr 81 \n(38
199: .nr 38 \wXerox/XC1-1-1/Modern
200: .if \n(81<\n(38 .nr 81 \n(38
201: .nr 38 \wRice/TimesRoman
202: .if \n(81<\n(38 .nr 81 \n(38
203: .nr 38 \wRice/TimesRoman/Italic
204: .if \n(81<\n(38 .nr 81 \n(38
205: .nr 38 \wRice/VileBlob/8
206: .if \n(81<\n(38 .nr 81 \n(38
207: .81
208: .rm 81
209: .nr 82 0
210: .nr 38 \wPoint Size
211: .if \n(82<\n(38 .nr 82 \n(38
212: .nr 38 \w10
213: .if \n(82<\n(38 .nr 82 \n(38
214: .nr 38 \w12
215: .if \n(82<\n(38 .nr 82 \n(38
216: .nr 38 \w10
217: .if \n(82<\n(38 .nr 82 \n(38
218: .nr 38 \w8
219: .if \n(82<\n(38 .nr 82 \n(38
220: .nr 38 \w10
221: .if \n(82<\n(38 .nr 82 \n(38
222: .82
223: .rm 82
224: .nr 38 1n
225: .nr 79 0
226: .nr 40 \n(79+(0*\n(38)
227: .nr 80 +\n(40
228: .nr 41 \n(80+(3*\n(38)
229: .nr 81 +\n(41
230: .nr 42 \n(81+(3*\n(38)
231: .nr 82 +\n(42
232: .nr TW \n(82
233: .if t .if (\n(TW+\n(.o)>7.65i .tm Table at line 150 file maha.1.tbl is too wide - \n(TW units
234: .nr #I \n(.i
235: .in +(\n(.lu-\n(TWu-\n(.iu)/2u
236: .fc
237: .nr #T 0-1
238: .nr #a 0-1
239: .eo
240: .de T#
241: .ds #d .d
242: .if \(ts\n(.z\(ts\(ts .ds #d nl
243: .mk ##
244: .nr ## -1v
245: .ls 1
246: .ls
247: ..
248: .ec
249: .ta \n(80u \n(81u \n(82u
250: .nr 31 \n(.f
251: .nr 35 1m
252: \&\h'|\n(40u'Name Given\h'|\n(41u'Universal Name\h'|\n(42u'Point Size
253: .ta \n(80u \n(81u \n(82u
254: .nr 31 \n(.f
255: .nr 35 1m
256: \&\h'|\n(40u'\h'|\n(41u'\h'|\n(42u'
257: .ta \n(80u \n(81u \n(82u
258: .nr 31 \n(.f
259: .nr 35 1m
260: \&\h'|\n(40u'Classic\h'|\n(41u'Xerox/XC1-1-1/Classic\h'|\n(42u'10
261: .ta \n(80u \n(81u \n(82u
262: .nr 31 \n(.f
263: .nr 35 1m
264: \&\h'|\n(40u'Modern/12\h'|\n(41u'Xerox/XC1-1-1/Modern\h'|\n(42u'12
265: .ta \n(80u \n(81u \n(82u
266: .nr 31 \n(.f
267: .nr 35 1m
268: \&\h'|\n(40u'/Rice/TimesRoman\h'|\n(41u'Rice/TimesRoman\h'|\n(42u'10
269: .ta \n(80u \n(81u \n(82u
270: .nr 31 \n(.f
271: .nr 35 1m
272: \&\h'|\n(40u'/Rice/TimesRoman/Italic/8\h'|\n(41u'Rice/TimesRoman/Italic\h'|\n(42u'8
273: .ta \n(80u \n(81u \n(82u
274: .nr 31 \n(.f
275: .nr 35 1m
276: \&\h'|\n(40u'/Rice/VileBlob/8/10\h'|\n(41u'Rice/VileBlob/8\h'|\n(42u'10
277: .fc
278: .nr T. 1
279: .T# 1
280: .in \n(#Iu
281: .35
282: .TE
283: .if \n-(b.=0 .nr c. \n(.c-\n(d.-10
284: .sp
285: If a font name has the unfortunate characteristic of containing nothing but
286: numbers in its last identifier, it can still be specified by always appending
287: a point size to the name, as in the last example above.
288: .sp
289: .PP
290: .B "Header Format"
291: .PP
292: The string that is used to build the header can have format options embedded
293: in it. Each formatting option is preceded with the character \*(lq%\*(rq in
294: a manner similar to
295: .IR printf (3S)
296: strings in C. The following format characters are recognized:
297: .sp
298: .TS
299: .if \n+(b.=1 .nr d. \n(.c-\n(c.-1
300: .de 35
301: .ps \n(.s
302: .vs \n(.vu
303: .in \n(.iu
304: .if \n(.u .fi
305: .if \n(.j .ad
306: .if \n(.j=0 .na
307: ..
308: .nf
309: .nr #~ 0
310: .if n .nr #~ 0.6n
311: .ds #d .d
312: .if \(ts\n(.z\(ts\(ts .ds #d nl
313: .fc
314: .nr 33 \n(.s
315: .rm 80 81
316: .nr 80 0
317: .nr 38 \wf
318: .if \n(80<\n(38 .nr 80 \n(38
319: .nr 38 \wt
320: .if \n(80<\n(38 .nr 80 \n(38
321: .nr 38 \wp
322: .if \n(80<\n(38 .nr 80 \n(38
323: .nr 38 \wl
324: .if \n(80<\n(38 .nr 80 \n(38
325: .80
326: .rm 80
327: .nr 81 0
328: .nr 38 \wcurrent file name
329: .if \n(81<\n(38 .nr 81 \n(38
330: .nr 38 \wlast modified time of the current file
331: .if \n(81<\n(38 .nr 81 \n(38
332: .nr 38 \wcurrent page number
333: .if \n(81<\n(38 .nr 81 \n(38
334: .nr 38 \wline number for the top line of the current page
335: .if \n(81<\n(38 .nr 81 \n(38
336: .81
337: .rm 81
338: .nr 38 1n
339: .nr 79 0
340: .nr 40 \n(79+(0*\n(38)
341: .nr 80 +\n(40
342: .nr 41 \n(80+(3*\n(38)
343: .nr 81 +\n(41
344: .nr TW \n(81
345: .if t .if (\n(TW+\n(.o)>7.65i .tm Table at line 172 file maha.1.tbl is too wide - \n(TW units
346: .nr #I \n(.i
347: .in +(\n(.lu-\n(TWu-\n(.iu)/2u
348: .fc
349: .nr #T 0-1
350: .nr #a 0-1
351: .eo
352: .de T#
353: .ds #d .d
354: .if \(ts\n(.z\(ts\(ts .ds #d nl
355: .mk ##
356: .nr ## -1v
357: .ls 1
358: .ls
359: ..
360: .ec
361: .ta \n(80u \n(81u
362: .nr 31 \n(.f
363: .nr 35 1m
364: \&\h'|\n(40u'f\h'|\n(41u'current file name
365: .ta \n(80u \n(81u
366: .nr 31 \n(.f
367: .nr 35 1m
368: \&\h'|\n(40u't\h'|\n(41u'last modified time of the current file
369: .ta \n(80u \n(81u
370: .nr 31 \n(.f
371: .nr 35 1m
372: \&\h'|\n(40u'p\h'|\n(41u'current page number
373: .ta \n(80u \n(81u
374: .nr 31 \n(.f
375: .nr 35 1m
376: \&\h'|\n(40u'l\h'|\n(41u'line number for the top line of the current page
377: .fc
378: .nr T. 1
379: .T# 1
380: .in \n(#Iu
381: .35
382: .TE
383: .if \n-(b.=0 .nr c. \n(.c-\n(d.-7
384: .sp
385: If a percent sign is followed by a character not in the list above, then
386: that character gets printed (without the leading percent sign). Note that a
387: percent sign can still be printed in the header by placing two in the
388: format. The default format string is:
389: .sp
390: .nf
391: .ce
392: "%f %t Page %p, line %l"
393: .fi
394: .SH ENVIRONMENT
395: .DT
396: MAHA strings of options to be used by
397: .IR maha .
398: .PP
399: .SH FILES
400: /etc/passwd contains information about system users
401: .SH "SEE ALSO"
402: cz(1) czarina
403: .PP
404: Interpress Electronic Printing Standard, \s8XSIS\s0 048404
405: .SH BUGS
406: The document name doesn't appear on the banner page like it should.
407: This is really the fault of the queueing software.
408: .PP
409: .I Maha
410: will not
411: realize that a file is already in interpress format and skip the
412: conversion phase.
413: .PP
414: .I Maha
415: doesn't have any metric information. Thus it won't wrap or clip lines.
416: If you are using a fixed width font, use ``pr'' as pre-processor.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.