It is possible to have whitespace between the -I command line option and its parameter.
by the contents of file. It is useful if files included with .so need to be preprocessed. Normally, soelim should be invoked with the -s option of groff.
To embed `\' in the file name, write `\\' or `\e'. To embed a space, write `\ '. Any other escape sequence in file makes soelim ignore the whole line.
Note that there must be no whitespace between the leading dot and the two characters `s' and `o'. Otherwise, only groff interprets the .so request (and soelim ignores it).
          input        sourced
          file          file
            |             |
            v             v
        preprocessor -> troff -> postprocessor
                                      |
                                      v
                                   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. This is handled by soelim:
          input
          file
            |
            v
          soelim -> preprocessor -> troff -> postprocessor
            ^                                     |
            |                                     v
         sourced                               output
          file                                  file