bugGNU roff - Bugs: bug #57665, tbl: want better TTY support for...

 
 

bug #57665: tbl: want better TTY support for extremely long tables

Submitter:  G. Branden Robinson <gbranden>
Submitted:  Sat 25 Jan 2020 01:35:07 PM UTC
   
 
Category:  Preprocessor tbl Severity:  2 - Minor
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
   

Jump to the original submission

Fri 09 Oct 2020 09:26:29 AM UTC, comment #6: 


commit ffef301cb320f13292f20d53f4fd2a52a5e70a47
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri Oct 9 19:57:43 2020 +1100

    Fix man(7) continuous rendering/tbl interaction.

    Stop tbl from injecting spurious blank lines (and emitting spurious
    warnings about tables and "text blocks" not "fitting on a page") into
    long tables in man pages when continuous rendering is used (the default
    for nroff output devices).

    * src/preproc/tbl/table.cpp (USE_KEEPS_REG): New preprocessor symbol
      stores name of groff register for dynamic determination of keep usage.

      (table::init_output): If the NOKEEP flag is not set, then in generated
      groff output, see if the usekeeps register is defined; if not, define
      it and enable usage of keeps.

      (table::do_row): In groff output, check usekeeps register before
      calling keep and release macros.

      (table::do_bottom): In groff output, check usekeeps register before
      calling release macro.

    * tmac/an-old.tmac (TS): Set the usekeeps register used by tbl to the
      logical complement of the man(7) cR (continuous rendering) register.

    Problem appears to date back to the introduction of continuous
    rendering in groff 1.17 (3 May 2001).


G. Branden Robinson <gbranden>
Group administrator
Wed 06 May 2020 03:21:12 PM UTC, comment #5: 

Upvoting this.  These seemingly spurious blank lines have long perplexed and annoyed me -- as seen for example in the Name Index of man 3 ncurses.  It would be nice to be able to suppress them when output goes to a TTY.

Benno Schulenberg <bens>
Mon 04 May 2020 01:20:42 PM UTC, comment #4: 


comment #3:

> Would the change proposed in bug #55124 comment #1 help with this?


It very well might.  I think the idea presented there (give a negative argument to the .pl request "infinite length" semantics).

G. Branden Robinson <gbranden>
Group administrator
Mon 04 May 2020 05:09:48 AM UTC, comment #3: 

Would the change proposed in bug #55124 comment #1 help with this?

Dave <barx>
Group Member
Sun 26 Jan 2020 07:22:49 PM UTC, comment #2: 

File "tmac/an-old.tmac"

A) You put the requests in the macro TS.

1) in the scope of nroff

2) save the current page length

3) define the new page length

B) In the macro TE

1) in the scope of nroff

2) restore the page length saved in the macro TS.

Bjarni Ingi Gislason <bjarniig>
Sat 25 Jan 2020 01:37:40 PM UTC, comment #1: 

/you get smoothly flowing text that is interrupted by page headers and footers./s/interrupted/not &/

G. Branden Robinson <gbranden>
Group administrator
Sat 25 Jan 2020 01:35:07 PM UTC, original submission:  

When I view pages like groff_char(7) on a terminal, continuous rendering is enabled.  This is nice because the man(7) macros don't make assumptions about the page length that way, and you get smoothly flowing text that is interrupted by page headers and footers.

Unfortunately, tbl is a preprocessor and doesn't know that the page length is effectively infinite.  This causes it to insert breaks in long tables.  Without the page headers and footers these look like single blank lines, the same you get from blank input line in table, or .sp, or .sp 1, as recently discussed on the -email is unavailable- list.

The net result is ugliness and potential confusion.

How can we get tbl to pretend the page length is unbounded, or stop introducing blank vertical space at the page boundaries?

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:
   

Attached Files
file #49943:  57665.diff added by gbranden (3KiB - text/x-patch)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by bens (Posted a comment)
  • -email is unavailable- added by bjarniig (Posted a comment)
  • -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 9 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2020-10-09 gbranden Severity1 - Wish 2 - Minor
        Item GroupFeature change Incorrect behaviour
        StatusIn Progress Fixed
        Open/ClosedOpen Closed
        Planned ReleaseNone 1.23.0
    2020-10-08 gbranden Attached File- Added 57665.diff, #49943
        StatusNone In Progress
        Assigned toNone gbranden
    2020-05-06 barx Carbon-CopyRemoved 93119 -

    Back to the top

    Powered by Savane 3.14-8eb0.
    Corresponding source code