[Top][All Lists]

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

Re: [groff] 08/21: [me]: Integrate better with papersize.tmac.

From: G. Branden Robinson
Subject: Re: [groff] 08/21: [me]: Integrate better with papersize.tmac.
Date: Fri, 25 Nov 2022 03:31:39 -0600

Hi Dave,

At 2022-11-19T10:16:30-0600, Dave Kemper wrote:
> >     * tmac/e.tmac: Integrate better with papersize.tmac by no longer
> >       forcing line (and title) length to 6 inches for typesetters on
> >       initialization.
> This is largely a step forward for the -me package, but I have two
> minor concerns about it.
>  - It puts the package's behavior out of sync with its documentation,
>  which still states (in the descriptions of the .xl and .ll macros)
>  that the default line length is 6.0i.

Quite correct.  I will fix that.

>  - It changes the default line length for the default paper size
> (letter) from 6.0i to 6.5i.  This will change the rendering of any
> historical -me documents that use this default.

I did think of this.  I rapidly ran into a problem.

I can't _find_ any historical -me documents.

Not apart from "" and "".

Anybody have any?

I have similar problems with mm, since it seems the best way to get
one's mitts on those is to have a Tenth Edition Research Unix source
distribution, and I don't.

> This isn't necessarily a bad thing -- 6.0i always seemed a quirky
> default,

Yes; with it and the other defaults, you get a 1 inch left margin and a
1½ inch right margin.  I remember when English instructors would savage
your paper and your grade with a fat-tipped red pen for such things.

> and probably many -me documents override it -- but is something -me
> users should be notified of.


> Alternatively, to preserve historical behavior
> but retain the new responsiveness to paper size, rather than
> initializing the line length to \n(.lu, the macro package could
> initialize it to \n(.lu-0.5i.

I think I'd prefer to assume that people want 1 inch margins all around
the page; groff's defaults come close to that.

We copied a truly bizarre default from DWB mm.  The page offset is
0.963i.  There has to be a story behind that, but I'm less sure that
it's a good one.

me(7) is the only full-service (non-man-page-related) package we ship
that doesn't support configuration of horizontal margins on the command
line.  I wonder if we should add this.  I suppose we could add `ll` and
`po` registers to configure the (initial) line length and page offset,
and have papersize.tmac assign those if a `paper` string has been
successfully configured.

Here's what that looks like right now.

.  ie \n[paper-w] \{\
.    tmc papersize.tmac: warning: ignoring unrecognized paper format
.    tm1 " '\*[paper-arg]'
.  \}
.  el \{\
.    if !r LL \
.      nr LL \n[.l]u  \" for ms, mdoc, man
.    if !r #R_MARGIN \
.      nr R_MARGIN 1i \" for mom
.    \" for mm
.    if !r W \{\
.      nr W \n[.l]u
.      if !r O \
.        nr O 1i
.    \}
.  \}

This is written so that a user who uses "-dpaper" on the command line
(or sets it in the troffrc file, as Bjarni recently advised Hans to do),
can still override these dimensions with the appropriate
package-specific registers if they wish.

I have a nefarious post-1.23 idea for adding a flag to nroff to make it
auto-size documents to the terminal window, complete with page offset
manipulation to center the document so people don't have to read
super-long lines even on super-big terminals.


Attachment: signature.asc
Description: PGP signature

reply via email to

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