soelim

Name
Synopsis
Description
Options
See also

Name

soelim - recursively interpolate source requests in roff files

Synopsis

soelim [-Crt] [-I dir] [input-file ...]
soelim --help
soelim -v soelim --version

Description

soelim replaces lines of the form “.so macro-file” within each input-file with the contents of macro-file, recursively. It is useful if files included with .so need to be preprocessed. Output is written to the standard output stream. Normally, soelim should be invoked with groff’s -s option. In the absence of input-file arguments, soelim reads the standard input stream.

To embed a backslash “\” in the name of a macro-file, write “\\” or “\e”. To embed a space, write “” (backslash followed by a space). Any other escape sequence in macro-file, including “\[rs]”, makes soelim ignore the whole line.

There must be no whitespace between the leading dot and the two characters “s” and “o”. Otherwise, only groff will interpret the .so request; soelim will ignore it (but see the -C option below).

The normal processing sequence of groff is as follows.

input sourced
file file
⎪ ⎪
↓ ↓
preprocessor ⎯→ troff ⎯→ postprocessor


output
file

That is, files sourced with .so are normally read only by troff (the actual formatter). soelim is not required for troff to source files.

If a file to be sourced should also be preprocessed, it must already be read before the input file passes through the preprocessor. soelim handles this.

input
file


soelim ⎯→ preprocessor ⎯→ troff ⎯→ postprocessor
↑ ⎪
⎪ ↓
sourced output
file file

Options

--help displays a usage message, while -v and --version show version information; all exit afterward.

-C

Recognize .so even when followed by a character other than space or newline.

-I dir

Add the directory dir to the search path for macro files (both those on the command line and those named in .so requests). The search path is initialized with the current directory. This option may be specified more than once; the directories are then searched in the order specified (but before the current directory). If you want to search the current directory before other directories, add “-I .” at the appropriate place.

No directory search is performed for files with an absolute file name.

-r

Write files “raw”; do not add .lf requests (for general use, with non-groff files).

-t

Emit TeX comment lines starting with “%” indicating the current file and line number, rather than .lf requests for the same purpose.

See also

groff(1)