groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Absolute spacing redux


From: Peter Schaffter
Subject: Re: Absolute spacing redux
Date: Wed, 6 Oct 2021 14:20:05 -0400
User-agent: Mutt/1.9.4 (2018-02-28)

On Thu, Oct 07, 2021, G. Branden Robinson wrote:
> At 2021-10-06T00:31:56-0400, Peter Schaffter wrote:
> > I believe groff needs a dedicated request for unambiguous absolute
> > spacing
.
> I didn't play with your demo yet, but the first thing that comes to my
> mind is that a _request_ might not be the best syntactical place to
> locate this extension from a language design standpoint.  Might it make
> more sense as a new measurement modifier?

Quite possibly.

> As "|" means "absolute" (in its idiosyncratic way) maybe the
> reckoning you're proposing could use a prefix of "@".

At first glance, a good choice.  '.sp @2i'  But see below.

> It doesn't need composability with "|", if I understand you, and
> outside of the few places where "|" is already recognized, it
> doesn't need to be exposed anywhere else.

There's the problem of .rt, though, when it's called without an
argument.  When it has an arg, it might as well be .sp, so the proposed
@ works.  Without an arg, how do we signal "return unambiguously
to the last .mk'd location," which, moreover, is .rt's expected
behaviour, according to the info docs:

  "The 'rt' request returns _upwards_ to the location marked with the
   last 'mk' request."

So we'd still need a new request.  Maybe .@rt if @ is adopted for .sp?
Or a new arg? '.rt @'?

Or the .rt issue could be swept under the carpet with some
additional documentation.  The info bit, above, with "...subject to
variations in vertical spacing that may be introduced by outputting
diverted material whose vertical spacing differs from the one in
effect when .rt is called."

I'm being ironic, of course, but it does expose the scope of the
problem.

> The other question that troubles me, as many of you will have predicted,
> is one of lexicon.

Me, too.

> What are we going to _call_ these "|" and "@" modifiers?  We can
> take over "absolute positioning" for "@" if we want, and document
> our deviation from CSTR #54 in a footnote[2].  Maybe the harder
> problem is what to then call the "|" modifier that we will have to
> continue to support indefinitely.

"Absolute positioning" is an Orwellianism. '.sp 1i' is absolute;
'.sp |1i' is relative (to the top of the page).  I wouldn't
recommend it.

Perhaps there's no need to call | and @ by different names.  They
(would) do the same thing, just a little differently:

"The DIST arg to 'sp' accepts two modifiers, '@' and '|'.  '@'
 positions what follow relative to the top of the page. '|'
 positions what follows relative to the top of the page plus one
 linespace."
 
But there's still the .rt problem.

-- 
Peter Schaffter
https://www.schaffter.ca



reply via email to

[Prev in Thread] Current Thread [Next in Thread]