On Tue, 2007-08-28 at 19:39 +0200, Axel Kielhorn wrote: > Why is .mso de.tmac preferred over .so de (I assume the tmac should > be > omitted, right?) If it works with -m it should work with .so, or did > I > miss something?
You missed something! .so file will include "file" ... if the file starts with a "/", then it is an absolute path, if it doesn't then it is either relative to the current directory or to the list of paths given in the -I option. It knows nothing inherently about the path to the tmac files etc. It knows nothing about extensions. So, you *could* say .so /usr/local/share/groff/1.19.3/tmac/de.tmac but that would be wrong if you installed it in a different place. .mso de.tmac looks in the macro directory. It DOES know about filename extensions, so you could say .mso de Here's what the info page says about the two: -- Request: .so file Read in the specified FILE and includes it in place of the `so' request. This is quite useful for large documents, e.g. keeping each chapter in a separate file. *Note gsoelim::, for more information. Since `gtroff' replaces the `so' request with the contents of `file', it makes a difference whether the data is terminated with a newline or not: Assuming that file `xxx' contains the word `foo' without a final newline, this This is .so xxx bar yields `This is foobar'. The search path for FILE can be controlled with the `-I' command line option. -- Request: .mso file Identical to the `so' request except that `gtroff' searches for the specified FILE in the same directories as macro files for the the `-m' command line option. If the file name to be included has the form `NAME.tmac' and it isn't found, `mso' tries to include `tmac.NAME' and vice versa.