|
|
1.1 root 1: .\" @(#)tt01 6.1 (Berkeley) 5/23/86
2: .\"
3: .NH
4: Introduction
5: .tr ^.
6: .PP
7: .UL troff
8: [1]
9: is a text-formatting program,
10: written originally by J. F. Ossanna,
11: for producing
12: high-quality printed output from the phototypesetter
13: on the
14: .UC UNIX
15: operating system.
16: This document is an example of
17: .UL troff
18: output.
19: .PP
20: The single most important rule
21: of using
22: .UL troff
23: is
24: not to use it directly, but through some intermediary.
25: In many ways,
26: .UL troff
27: resembles an assembly language _
28: a remarkably powerful and flexible one _
29: but nonetheless such that many operations must be specified
30: at a level of detail and in a form that is too hard
31: for most people to use effectively.
32: .PP
33: For two special applications, there are programs that provide
34: an interface to
35: .UL troff
36: for the majority of users.
37: .UL eqn
38: [2]
39: provides an easy to learn language for typesetting mathematics;
40: the
41: .UL eqn
42: user
43: need know no
44: .UL troff
45: whatsoever
46: to typeset mathematics.
47: .UL tbl
48: [3]
49: provides the same convenience for producing tables of arbitrary
50: complexity.
51: .PP
52: For producing straight text (which may well contain mathematics or tables), there are a number of `macro packages'
53: that define formatting rules and operations for specific styles
54: of documents,
55: and reduce the amount of
56: direct contact with
57: .UL troff .
58: In particular, the `\-ms'
59: [4],
60: PWB/MM [5], and `\-me' [6]
61: packages
62: for internal memoranda and external papers
63: provide most of the facilities needed
64: for a wide range of document preparation.\(dg
65: .FS
66: \(dg Most Berkeley Unix sites only have \-ms and \-me.
67: .FE
68: (This memo was prepared with `\-ms'.)
69: There are also packages for viewgraphs,
70: for simulating the older
71: .UL roff
72: formatters,
73: and for other special applications.
74: Typically you will find these packages easier to use
75: than
76: .UL troff
77: once you get beyond the most trivial operations;
78: you should always consider them first.
79: .PP
80: In the few cases where existing packages don't do the whole job,
81: the solution is
82: .ul
83: not
84: to write an entirely new set of
85: .UL troff
86: instructions from scratch, but to make small changes
87: to adapt packages that already exist.
88: .WS
89: .PP
90: In accordance with this philosophy of letting someone else
91: do the work,
92: the part of
93: .UL troff
94: described here is only a small part of the whole,
95: although it tries to concentrate on the more useful parts.
96: In any case, there is no attempt to be complete.
97: Rather, the emphasis is on showing how to do simple things,
98: and how to make incremental changes to what already exists.
99: The contents of the remaining sections are:
100: .sp
101: .nf
102: .in .1i
103: .ta .3i
104: \02. Point sizes and line spacing
105: \03. Fonts and special characters
106: \04. Indents and line length
107: \05. Tabs
108: \06. Local motions: Drawing lines and characters
109: \07. Strings
110: \08. Introduction to macros
111: \09. Titles, pages and numbering
112: 10. Number registers and arithmetic
113: 11. Macros with arguments
114: 12. Conditionals
115: 13. Environments
116: 14. Diversions
117: Appendix: Typesetter character set
118: .sp
119: .in 0
120: .fi
121: The
122: .UL troff
123: described here is the C-language version supplied with
124: .UC UNIX
125: Version 7 and 32V as documented in [1].
126: .WS
127: .PP
128: To use
129: .UL troff
130: you have to prepare not only the actual text you want printed,
131: but some information that tells
132: .ul
133: how
134: you want it printed.
135: (Readers who use
136: .UL roff
137: will find the approach familiar.)
138: For
139: .UL troff
140: the text
141: and
142: the formatting information are often intertwined quite intimately.
143: Most commands to
144: .UL troff
145: are placed on a line separate from the text itself,
146: beginning with a period (one command per line).
147: For example,
148: .P1
149: Some text.
150: ^ps 14
151: Some more text.
152: .P2
153: will change the `point size',
154: that is,
155: the size of the letters being printed,
156: to `14 point' (one point is 1/72 inch) like this:
157: .P1
158: .fi
159: Some text.
160: .ps 14
161: Some more text.
162: .ps 10
163: .P2
164: .PP
165: Occasionally, though,
166: something special occurs in the middle of a line _
167: to produce
168: .P1
169: Area = \(*p\fIr\fR\|\s8\u2\d\s0
170: .P2
171: you have to type
172: .P1
173: Area = \e(*p\efIr\efR\e\^|\^\es8\eu2\ed\es0
174: .P2
175: (which we will explain shortly).
176: The backslash character
177: .BD \e
178: is used
179: to introduce
180: .UL troff
181: commands and special characters within a line of text.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.