bugGNU roff - Bugs: bug #60820, groff.texi: clarify meaning of |...


bug #60820: groff.texi: clarify meaning of | operator in vertical-movement contexts

Submitter:  Dave <barx>
Submitted:  Fri 25 Jun 2021 01:03:54 AM UTC
Category:  Core Severity:  2 - Minor
Item Group:  Documentation Status:  Fixed
Privacy:  Public Assigned to:  gbranden
Open/Closed:  Closed Planned Release:  1.23.0
* Mandatory Fields

Add a New Comment Rich Markup

Tue 22 Mar 2022 10:28:17 AM UTC, comment #5: 

comment #4:

> Resolving per submitter satisfaction.

Pah.  I am never satisfied!

In this case, I'm satisfied that the text captures Bjarni's point from comment #1 and ensuing comment #2 commentary.  I'm not satisfied that it captures all the points raised in the original submission; the confounding effects Tadziu notes of the "initial pseudo-page transition and trap-invoked page header macro" may remain unaddressed in the | documentation, but I'm not yet adept enough to translate that verbiage into a specific test case to illustrate a deficiency.  So I reckon I can't exactly be said to be unsatisfied either.

Dave <barx>
Group Member
Tue 15 Mar 2022 08:35:50 AM UTC, comment #4: 

Resolving per submitter satisfaction.

commit 9ee52970a664d7b2d4232d1713be2eb2f5e97e7d
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Mon Mar 7 11:51:55 2022 +1100

    doc/groff.texi: Expand '|' operator discussion.

    Split discussion of operator application in horizontal and vertical
    contexts.  Add example of vertical usage.

    Drop redundant discussion of '|' from description of `sp` request.

    Migrate terminology: "scaling indicator" -> "scaling unit".

G. Branden Robinson <gbranden>
Group administrator
Tue 15 Mar 2022 01:41:20 AM UTC, comment #3: 

Commit 9ee52970 updates the manual with the points of comment #2, with an illustrative example.  Thanks, Branden!

Dave <barx>
Group Member
Wed 02 Mar 2022 09:46:30 PM UTC, comment #2: 

Branden replied in that bug, pointing out new text added to the manual in commit 1228acc4, which does indeed clarify much about roff cursor positioning, including the sentence "Therefore the initial drawing position... is not at the origin, but down and to the right of it."

The new text doesn't state, and I don't think it's an obvious inference, that the vertical placement of the initial drawing position is also the vertical origin for | positioning.  It does make some intuitive sense if the next thing drawn after a \v'|' movement is text, but if it's a drawing command, the behavior seems more puzzling.

It's also nonintuitive, and thus worth noting, that the vertical page origin is based on the current line spacing, which means it can move over the course of processing a page.

Dave <barx>
Group Member
Mon 28 Feb 2022 08:05:16 PM UTC, comment #1: 

Bjarni posted relevant information in comment 4 of bug #61507: "The absolute [vertical] position '0' (zero) is the first usable printable line, not the distance from the edge of the paper."  He included an example illustrating this.

Dave <barx>
Group Member
Fri 25 Jun 2021 01:03:54 AM UTC, original submission:  

doc/groff.texi presently says, "a leading '|' operator indicates an absolute position. For vertical movements, it specifies the distance from the top of the page;"

But this is not quite what happens.  CSTR#54 attempted to explain it--"For vertically-oriented requests and functions, |N becomes the distance in basic units from the current vertical place on the page or in a diversion... to the vertical place N"--but I find this not terribly illuminating.  Whether that's a flaw with the text or with me is an open question.

On the email list, Tadziu provided a very detailed explanation of what's happening (http://lists.gnu.org/archive/html/groff/2021-06/msg00093.html).  However, I'm at a loss how to distill this down to an explanation suitable for the Texinfo manual.  So I have no suggested replacement wording, just an observation that the current text is a simplification that turns out to be incorrect in certain cases.

Dave <barx>
Group Member


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by gbranden (Posted a comment)
  • -email is unavailable- added by barx (Submitted the item)

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.


    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2022-03-15 gbranden StatusNone Fixed
        Assigned toNone gbranden
        Open/ClosedOpen Closed
        Planned ReleaseNone 1.23.0

    Back to the top

    Powered by Savane 3.13-3cd0.
    Corresponding source code