groff: update vendor branch to v1.20.1
[dragonfly.git] / contrib / groff / src / preproc / soelim / soelim.man
CommitLineData
465b256c 1'\" p
92d0a6a6 2.ig
4d3e9548
JL
3Copyright (C) 1989-2000, 2001, 2003, 2004, 2006, 2008, 2009
4Free Software Foundation, Inc.
92d0a6a6
JR
5
6Permission is granted to make and distribute verbatim copies of
7this manual provided the copyright notice and this permission notice
8are preserved on all copies.
9
10Permission is granted to copy and distribute modified versions of this
11manual under the conditions for verbatim copying, provided that the
12entire resulting derived work is distributed under the terms of a
13permission notice identical to this one.
14
15Permission is granted to copy and distribute translations of this
16manual into another language, under the above conditions for modified
17versions, except that this permission notice may be included in
18translations approved by the Free Software Foundation instead of in
19the original English.
20..
465b256c
JR
21.
22.mso pic.tmac
23.
92d0a6a6
JR
24.TH @G@SOELIM @MAN1EXT@ "@MDATE@" "Groff Version @VERSION@"
25.
4d3e9548 26.
92d0a6a6 27.SH NAME
4d3e9548 28.
92d0a6a6
JR
29@g@soelim \- interpret .so requests in groff input
30.
4d3e9548 31.
92d0a6a6 32.SH SYNOPSIS
4d3e9548
JL
33.
34.SY @g@soelim
35.OP \-Crtv
36.OP \-I dir
37.RI [ files
38.IR \|.\|.\|. ]
39.YS
92d0a6a6
JR
40.
41.PP
42It is possible to have whitespace between the
43.B \-I
44command line option and its parameter.
45.
4d3e9548 46.
92d0a6a6 47.SH DESCRIPTION
4d3e9548 48.
92d0a6a6
JR
49.B @g@soelim
50reads
51.I files
52and replaces lines of the form
53.IP
4d3e9548 54.BI .so\~ file
92d0a6a6
JR
55.LP
56by the contents of
57.IR file .
58It is useful if files included with
4d3e9548 59.B .so
92d0a6a6
JR
60need to be preprocessed.
61Normally,
62.B @g@soelim
63should be invoked with the
64.B \-s
65option of
66.BR groff .
67.
68.PP
4d3e9548
JL
69To embed `\[rs]' in the file name, write `\[rs]\[rs]' or `\[rs]e'.
70To embed a space, write `\[rs]\ '.
71Any other escape sequence in
72.I file
73makes
74.B soelim
75ignore the whole line.
76.
77.PP
78Note that there must be no whitespace between the leading dot and the two
79characters `s' and `o'.
80Otherwise, only
92d0a6a6
JR
81.B groff
82interprets the
83.B .so
84request (and
85.B soelim
86ignores it).
87.
4d3e9548 88.
92d0a6a6 89.SH OPTIONS
4d3e9548 90.
92d0a6a6
JR
91.TP
92.B \-C
93Recognize
94.B .so
95even when followed by a character other than space or newline.
96.
97.TP
98.BI \-I dir
4d3e9548
JL
99This option may be used to add a directory to the search path for files
100(both those on the command line and those named in
101.B .so
92d0a6a6 102requests).
4d3e9548
JL
103The search path is initialized with the current directory.
104This option may be specified more than once; the directories are then
105searched in the order specified (but before the current directory).
106If you want to make the current directory be read before other directories,
107add
108.B \-I.\&
109at the appropriate place.
110.IP
111No directory search is performed for files with an absolute file name.
92d0a6a6
JR
112.
113.TP
114.B \-r
4d3e9548
JL
115Do not add
116.B .lf
117requests (for general use, with non-groff files).
92d0a6a6
JR
118.
119.TP
120.B \-t
4d3e9548
JL
121Don't emit
122.B .lf
123requests but TeX comment lines (starting with `%') giving the current file
124and line number.
92d0a6a6
JR
125.
126.TP
127.B \-v
128Print the version number.
129.
4d3e9548 130.
465b256c 131.SH USAGE
4d3e9548 132.
465b256c
JR
133The normal processing sequence of groff is this:
134.
135.PP
136.ie t \{\
137.PS
4d3e9548
JL
138.ps 10
139.vs 12
465b256c
JR
140box invisible width 0.5 height 0.4 "input" "file";
141move to last box .bottom;
142down;
143arrow 0.3;
144box invisible width 0.8 height 0.2 "preprocessor";
145move to last box .right
146right;
147arrow 0.3;
148A: box invisible width 0.35 height 0.2 "troff";
149move to last box .top;
150up;
151move 0.3;
152box invisible width 0.6 height 0.4 "sourced" "file";
153line <- up 0.3 from A.top;
154move to A.right;
155right;
156arrow 0.3;
157box invisible width 0.85 height 0.2 "postprocessor";
158move to last box .bottom;
159down;
160arrow 0.3;
161box invisible width 0.5 height 0.4 "output" "file"
4d3e9548
JL
162.ps
163.vs
465b256c
JR
164.PE
165.\}
166.el \{\
167.nf
168 input sourced
169 file file
170 | |
171 v v
172 preprocessor -> troff -> postprocessor
173 |
174 v
175 output
176 file
177.fi
178.\}
179.PP
180.
181That is, files sourced with
182.B .so
183are normally read
184.I only
185by
186.B troff
187(the actual formatter).
188.B soelim
189is
190.I not
191required for
192.B troff
193to source files.
194.
195.PP
4d3e9548 196If a file to be sourced should also be preprocessed, it must already be read
465b256c
JR
197.I before
198the input file passes through the preprocessor.
199This is handled by
200.BR soelim :
201.
202.PP
203.ie t \{\
204.PS
4d3e9548
JL
205.ps 10
206.vs 12
465b256c
JR
207box invisible width 0.5 height 0.4 "input" "file";
208move to last box .bottom;
209down;
210arrow 0.3;
211A: box invisible width 0.5 height 0.2 "soelim";
212line <- 0.3;
213box invisible width 0.5 height 0.4 "sourced" "file";
214move to A.right;
215right;
216arrow 0.3;
217box invisible width 0.8 height 0.2 "preprocessor";
218arrow 0.3;
219box invisible width 0.35 height 0.2 "troff";
220arrow 0.3
221box invisible width 0.85 height 0.2 "postprocessor";
222move to last box .bottom;
223down;
224arrow 0.3;
225box invisible width 0.5 height 0.4 "output" "file"
4d3e9548
JL
226.ps
227.vs
465b256c
JR
228.PE
229.\}
230.el \{\
231.nf
232 input
233 file
234 |
235 v
236 soelim -> preprocessor -> troff -> postprocessor
237 ^ |
238 | v
239 sourced output
240 file file
241.fi
242.\}
243.
4d3e9548 244.
92d0a6a6 245.SH "SEE ALSO"
4d3e9548 246.
92d0a6a6
JR
247.BR groff (@MAN1EXT@)
248.
249.\" Local Variables:
250.\" mode: nroff
251.\" End: