Research V7 development
[unix-history] / usr / man / man1 / roff.1
CommitLineData
4b31075d
KT
1.TH ROFF 1
2.SH NAME
3roff \- format text
4.SH SYNOPSIS
5.B roff
6[ \fB+\fIn\fR ] [ \fB\-\fIn\fR ] [
7.B \-s
8] [
9.B \-h
10] file ...
11.PP
12.B nroff \-mr
13[ option ] ... file ...
14.br
15.B troff \-mr
16[ option ] ... file ...
17.SH DESCRIPTION
18.I Roff
19formats text according to control lines embedded
20in the text in the given files.
21Encountering a nonexistent file terminates printing.
22Incoming inter-terminal messages are turned off during printing.
23The optional flag arguments mean:
24.br
25.ns
26.TP 5
27.BI + n
28Start printing at the first page with number
29.IR n .
30.br
31.ns
32.TP 5
33.BI \- n
34Stop printing at the first page numbered higher
35than
36.IR n .
37.br
38.ns
39.TP 5
40.B \-s
41Stop before each page (including the first)
42to allow paper manipulation;
43resume on receipt of an interrupt signal.
44.br
45.ns
46.TP 5
47.B \-h
48Insert tabs in the output stream to replace
49spaces whenever appropriate.
50.PP
51.DT
52Input consists of intermixed
53.I "text lines,"
54which contain information to be formatted, and
55.I "request lines,"
56which contain instructions about how to format
57it.
58Request lines begin with a distinguished
59.I "control character,"
60normally a period.
61.PP
62Output lines may be
63.I filled
64as nearly as possible with words without regard to
65input lineation.
66Line
67.I breaks
68may be caused at specified places by
69certain commands, or by the appearance of an
70empty input line or an input line beginning with a space.
71.PP
72The capabilities of
73.I roff
74are specified in the attached Request Summary.
75Numerical values are denoted there by n or +n,
76titles by t, and single characters by c.
77Numbers denoted +n may be signed + or \-,
78in which case they signify relative changes to
79a quantity, otherwise they signify
80an absolute resetting.
81Missing n fields are ordinarily taken to be 1,
82missing t fields to be empty, and c fields to shut off
83the appropriate special interpretation.
84.PP
85Running titles usually appear at top and bottom of every
86page.
87They are set by requests like
88.PP
89.in +10
90.if t \&.he \(fmpart1\(fmpart2\(fmpart3\(fm
91.if n \&.he 'part1'part2'part3'
92.in -10
93.PP
94Part1 is left justified, part2 is centered,
95and part3 is right justified on the page.
96Any % sign in a title is replaced by the current
97page number.
98Any nonblank may serve as a quote.
99.PP
100ASCII tab characters are replaced in the input by a
101.I "replacement character,"
102normally a space,
103according to the
104column settings given by a .ta command.
105(See .tr for how to convert this character on output.)
106.PP
107Automatic hyphenation of filled output is done
108under control of .hy.
109When a word contains a designated
110.I "hyphenation character,"
111that character disappears from the output and
112hyphens can be introduced into
113the word at the marked places only.
114.PP
115The
116.B \-mr
117option of
118.I nroff
119or
120.IR troff (1)
121simulates
122.I roff
123to the greatest extent possible.
124.SH FILES
125/usr/lib/suftab suffix hyphenation tables
126.br
127/tmp/rtm? temporary
128.br
129.SH BUGS
130.I Roff
131is the simplest of the text formatting
132programs, and is utterly frozen.
133.bp
134.tc |
135.tr |
136.in 0
137.ce
138REQUEST SUMMARY
139.PP
140.ul
141.ta \w'.tr cdef.. 'u +\w'Break 'u +\w'Initial 'u
142.di x
143 \ka
144.br
145.di
146.in \nau
147.ti 0
148Request Break Initial Meaning
149.na
150.ti 0
151.li
152.ad yes yes Begin adjusting right margins.
153.ti 0
154.li
155.ar no arabic Arabic page numbers.
156.ti 0
157.li
158.br yes \- Causes a line break \*- the filling of
159the current line is stopped.
160.ti 0
161.li
162.bl|n yes \- Insert of n blank lines, on new page if necessary.
163.ti 0
164.li
165.bp|+n yes n=1 Begin new page and number it n; no n means `+1'.
166.ti 0
167.li
168.cc|c no c=. Control character becomes `c'.
169.ti 0
170.li
171.ce|n yes \- Center the next n input lines,
172without filling.
173.ti 0
174.li
175.de|xx no \- Define parameterless macro
176to be invoked by request `.xx'
177(definition ends on line beginning `\fB..\fR').
178.ti 0
179.li
180.ds yes no Double space; same as `.ls 2'.
181.ti 0
182.li
183.ef|t no t=\*a\*a\*a\*a Even foot title becomes t.
184.ti 0
185.li
186.eh|t no t=\*a\*a\*a\*a Even head title becomes t.
187.ti 0
188.li
189.fi yes yes Begin filling output lines.
190.ti 0
191.li
192.fo no t=\*a\*a\*a\*a All foot titles are t.
193.ti 0
194.li
195.hc|c no none Hyphenation character becomes `c'.
196.ti 0
197.li
198.he|t no t=\*a\*a\*a\*a All head titles are t.
199.ti 0
200.li
201.hx no \- Title lines are suppressed.
202.ti 0
203.li
204.hy|n no n=1 Hyphenation is done, if n=1;
205and is not done, if n=0.
206.ti 0
207.li
208.ig no \- Ignore input lines through
209a line beginning with `\fB..\fR'.
210.ti 0
211.li
212.in|+n yes \- Indent n spaces from left margin.
213.ti 0
214.li
215.ix +n no \- Same as `.in' but without break.
216.ti 0
217.li
218.li|n no \- Literal, treat next n lines as text.
219.ti 0
220.li
221.ll|+n no n=65 Line length including indent is n characters.
222.ti 0
223.li
224.ls|+n yes n=1 Line spacing set to n lines per output line.
225.ti 0
226.li
227.m1|n no n=2 Put n blank lines between the top
228of page and head title.
229.ti 0
230.li
231.m2|n no n=2 n blank lines put between head title
232and beginning of text on page.
233.ti 0
234.li
235.m3|n no n=1 n blank lines put between end of
236text and foot title.
237.ti 0
238.li
239.m4|n no n=3 n blank lines put between the foot title
240and the bottom of page.
241.ti 0
242.li
243.na yes no Stop adjusting the right margin.
244.ti 0
245.li
246.ne|n no \- Begin new page, if n output lines
247cannot fit on present page.
248.ti 0
249.li
250.nn|+n no \- The next n output lines are not numbered.
251.ti 0
252.li
253.n1 no no Add 5 to page offset;
254number lines in margin from 1 on each page.
255.ti 0
256.li
257.n2|n no no Add 5 to page offset;
258number lines from n;
259stop if n=0.
260.ti 0
261.li
262.ni|+n no n=0 Line numbers are indented n.
263.ti 0
264.li
265.nf yes no Stop filling output lines.
266.ti 0
267.li
268.nx|file \- Switch input to `file'.
269.ti 0
270.li
271.of|t no t=\*a\*a\*a\*a Odd foot title becomes t.
272.ti 0
273.li
274.oh|t no t=\*a\*a\*a\*a Odd head title becomes t.
275.ti 0
276.li
277.pa|+n yes n=1 Same as `.bp'.
278.ti 0
279.li
280.pl|+n no n=66 Total paper length taken to be n lines.
281.ti 0
282.li
283.po|+n no n=0 Page offset.
284All lines are preceded by n spaces.
285.ti 0
286.li
287.ro no arabic Roman page numbers.
288.ti 0
289.li
290.sk|n no \- Produce n blank pages starting next page.
291.ti 0
292.li
293.sp|n yes \- Insert block of n blank lines,
294except at top of page.
295.ti 0
296.li
297.ss yes yes Single space output lines,
298equivalent to `.ls 1'.
299.ti 0
300.li
301.ta|n|n.. \- Pseudotab settings.
302Initial tab settings are columns 9 17 25 ...
303.ti 0
304.li
305.tc|c no space Tab replacement character becomes `c'.
306.ti 0
307.li
308.ti|+n yes \- Temporarily indent next output
309line n spaces.
310.ti0
311.li
312.tr|cdef.. no \- Translate c into d, e into f, etc.
313.ti0
314.li
315.ul|n no \- Underline the letters and numbers
316in the next n input lines.
317.br
318.tr ||