|
|
1.1 root 1: Changed 7/27/81
2:
3: The troff in this directory (known as a.out)
4: is a troff that produces machine-independent output.
5: It requires a file of descriptive information about
6: the particular typesetter you have in mind, and produces
7: output parameterized for that device.
8:
9: Thus:
10: a.out -T202 ...
11: produces output for the mergenthaler linotron 202.
12: (This is the default.)
13:
14: To make this work, one needs to create a set of
15: device and font descriptions in the directory
16: /usr/lib/font/devxxx
17: where "xxx" is your device name.
18: Currently supported devices are
19: 202 mergenthaler 202 using our software
20: aps autologic aps5
21: cat gsi cat (not really working at present)
22:
23: The file "DESC" contains information about the
24: device itself and the character set. The file dev202/DESC
25: is a good example; follow the format closely.
26:
27: In addition, each font needs a description of its
28: characters, width and device-driving codes;
29: see dev202/R and S for typical examples.
30:
31: The program "makedev" will convert these text
32: descriptions into a binary form that the a.out can
33: slurp up in a single gulp during initialization;
34: these wind up in dev202/DESC.out (which includes
35: default font info) and XX.out for info about font XX.
36:
37: The second half of the job is to write a post-processor
38: that converts the more or less machine-independent a.out
39: output into specific codes for your favorite typesetter.
40: d202.c is the driver for the 202;
41: it will serve as a useful prototype. In particular,
42: it contains a precise description of the output language.
43: Other working postprocessors are
44: daps aps5
45: dcat graphic systems CAT (not really up to date)
46: tc tektronix 4014
47: hc hp2621 (mainly for crude graphics)
48: ta arbitrary terminal
49: The 202 driver writes onto /dev/202 in the same way that
50: old troff writes on /dev/cat; to get its output on the std output,
51: use, e.g., d202 -t ... >file.
52:
53: One can always simply run
54: a.out
55: and look at the output; it is guaranteed to be ascii text
56: and thus safe to edit, grep, etc.
57: (Since it is ascii, it is also guaranteed to be quite voluminous.)
58: On the research system, /usr/bin/troff is actually a shell program
59: that detects -Txxx arguments; the current default is 202.
60: /usr/lib/troff.new and the appropriate postprocessor are fired up.
61:
62: Putting output codes into the font description files
63: seems like the right thing to do but I'm not happy yet.
64: Accordingly, the formats of any or all of the files
65: described here are subject to drastic change; hang loose.
66:
67: As it says in the Unix warranty:
68: "There is no warranty of merchantability nor any warranty
69: of fitness for a particular purpose nor any other warranty,
70: either express or implied, as to the accuracy of the
71: enclosed materials or as to their suitability for any
72: particular purpose. Accordingly, Bell Telephone
73: Laboratories assumes no responsibility for their use by the
74: recipient. Further, Bell Laboratories assumes no obligation
75: to furnish any assistance of any kind whatsoever, or to
76: furnish any additional information or documentation."
77:
78: Nevertheless, I will try to answer questions in cases of
79: dire necessity. Suggestions and other comments would be appreciated.
80:
81: Brian W. Kernighan
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.