[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [groff] soelim: Ignoring Some ’so’ Requests
From: |
Jeff Conrad |
Subject: |
Re: [groff] soelim: Ignoring Some ’so’ Requests |
Date: |
Mon, 20 Aug 2018 00:22:42 +0000 |
Ralph,
> > 'so /usr/lib/tmac/tmac.m
> > This probably wouldn’t be the preferred way of doing things anymore
>
> I see no reason to demote it. :-)
I was getting more at using “.mso”, but for the example above, the file
well might not be on the macro path. I think it’s better to use “'”
than a space because what’s going on is more readily apparent—at least
to those who understand the idiom.
> > The careful reader of the groff soelim man page will see that the same
> > thing can be accomplished by putting whitespace between the standard
> > control character and the request (e.g., “. so”)
> But doesn't suggest why that's useful.
Which invites the question, “Is it still useful?” In the old days,
reducing the amount of superfluous material run through preprocessors
made a difference; nowadays, I’m not sure it matters. But sometimes I
don’t want stuff like a macro package run through certain preprocessors.
For example, I’ve long used a sed(1) script that, among other things,
converts “"”, “``”, and “''” to \[lq] and \[rq] as appropriate. It
works pretty well with text source, but I’m not sure I always trust it
with macros. So I’ll “.so” a text file but “'so” a macro package.
> Whilst looking at this, I noticed groff's info says
> ...
> Since 'gtroff' replaces the 'so' request with the contents of
> 'file', it makes a difference whether the data is terminated with
> . . .
> Should groff's documentation be
> encouraging such practice? Does it work?
> . . .
> I think groff's documentation should acknowledge an old technique, say
> it was never a good idea, that it doesn't work with groff, and that `\c'
> can achieve the desired result.
To be honest, I’d never seen a need to so a file without a final newline
(perhaps some type of data-merge application would qualify), but should
such a need arise, Ralph’s suggestion seems the way to go. Especially
because it actually works.
And the documentation should probably eventually be corrected.
Jeff Conrad