bugGNU roff - Bugs: bug #60609, [man] doesn't output footers for...

 
 

bug #60609: [man] doesn't output footers for pages 1..(n-1) in continuous rendering mode

Submitter:  G. Branden Robinson <gbranden>
Submitted:  Sat 15 May 2021 07:04:12 AM UTC
   
 
Category:  Macro package man Severity:  3 - Normal
Item Group:  Incorrect behaviour Status:  Fixed
Privacy:  Public Assigned to:  gbranden
Open/Closed:  Closed Planned Release:  1.23.0
* Mandatory Fields

Add a New Comment Rich Markup
   

Sun 16 May 2021 01:00:53 AM UTC, comment #1: 


commit 22809a7600f3e9c35116ed9cbe7ed75d9422ce58
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Sun May 16 10:36:23 2021 +1000

    [man]: Fix missing page footers when -rcR=1.

    Fix missing page footers when continuously rendering multiple documents.
    Resolving this uncovered entangled header and footer management bugs
    with batch processing even when _not_ continuously rendering.

    * tmac/an-old.tmac (an-start-new-document): New macro clears header trap
      so it doesn't get called with stale information.  (The TH macro
      already re-sets a header trap with every man page if not continuously
      rendering.)  This macro also absorbs the break-page and page number
      incrementation logic from TH.

      (TH): Adapt semantics of "an-first" register to mean not "first page
      rendered" (apparently) but "first page of new document".  If we are
      _not_ on the first page of a new document and the TH macro is called,
      we must be batch processing: force the previous man page to end (call
      an-end if continuously rendering, or an-start-new-document if not).
      After all the header and footer strings have been configured for the
      man page, call an-header if we're on the first page of the document,
      not (just) if we're continuously rendering.  Zero an-first register at
      end of macro here unconditionally instead of conditionally in
      .an-header.

      (an-header): Drop conditional on continuous rendering.

    When I batch-render our 62 man pages to the terminal, I do note one
    cosmetic regression: the lj4_font(5) page, when continuously rendered in
    batch processing, has no space between its header line and first section
    heading ("Name").  Another cosmetic issue in this scenario is that the
    footers for every rendered page but the last, which had (wrongly) been
    absent entirely, are set with no space after them and the header of the
    next.

    Fixes <https://savannah.gnu.org/bugs/index.php?60609>.


G. Branden Robinson <gbranden>
Group administrator
Sat 15 May 2021 07:04:12 AM UTC, original submission:  

As stated in summary.

The footer only shows up when switching to an mdoc(7) format page causes a trap to be called that forces it out (thanks to andoc.tmac), or when the final page is rendered because the end macro gets called.

I have a fix in preparation.

G. Branden Robinson <gbranden>
Group administrator

 

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

Attach Files:
   
   
Comment:
   

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 (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 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2021-05-16 gbranden StatusIn Progress Fixed
        Open/ClosedOpen Closed
        Planned ReleaseNone 1.23.0

    Back to the top

    Powered by Savane 3.13-caa5.
    Corresponding source code