bugGNU troff - Bugs: bug #63142, [troff] deprecate newlines as...

 
 

bug #63142: [troff] deprecate newlines as escape argument delimiters

Submitter:  G. Branden Robinson <gbranden>
Submitted:  Fri 30 Sep 2022 11:33:47 PM UTC
 
Category:  Core Severity:  1 - Wish
Item Group:  Feature change Status:  Postponed
Privacy:  Public Assigned to:  None
Open/Closed:  Open Planned Release:  None
* Mandatory Fields

Add a New Comment (Rich Markup)
   

Comment Type & Canned Response:
       No canned response available

 

Sat 08 Oct 2022 12:40:47 AM UTC, comment #3: 

CSTR#54's section 5.2 makes the general observation "In \x'...' and other functions [sic] having a pair of delimiters around their parameter, the delimiter choice (here ') is arbitrary...", a nicely ambiguous term that could be interpreted as anything from "any punctuation mark" to "any printing character" to "any ASCII character."  So historical behavior does seem a more reliable guide here than historical documentation.

Dave <barx>
Project Member
Tue 04 Oct 2022 02:34:12 AM UTC, comment #2: 

I don't aim to move on this until after 1.23.

G. Branden Robinson <gbranden>
Project Administrator
Sat 01 Oct 2022 06:37:31 PM UTC, comment #1: 

Heirloom Doctools troff in non-groff compatibility mode:

$ ./bin/nroff -V
Heirloom doctools nroff, release 191015
$ printf '.xflag 0\n\A\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

ABC D
$ printf '.xflag 0\n.sp\n\b\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

ABC D
$ printf '.xflag 0\n\o\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

ABC D
$ printf '.xflag 0\n\w\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

0ABC D
$ printf '.xflag 0\n\X\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

ABC D
$ printf '.xflag 0\n\Z\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff | cat -s
ABC D

DWB 3.3:

$ ./bin/nroff -V
nroff: DWB 3.3   8/3/16 18:29
$ printf '\A\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff | cat -s
A ABC D

$ printf '.sp\n\b\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

ABC D
$ printf '\o\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

ABC D
$ printf '\w\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

0ABC D
$ printf '\X\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff

ABC D
$ printf '\Z\nABC\nD\n.pl \\n(nlu\n' | ./bin/nroff | cat -s
Z ABC D

G. Branden Robinson <gbranden>
Project Administrator
Fri 30 Sep 2022 11:33:47 PM UTC, original submission:  

I recently had to research this issue to revise the corresponding section of our Texinfo manual.

https://git.savannah.gnu.org/cgit/groff.git/tree/doc/groff.texi?id=f86b47890a6759bbef94216bf6f9cd7fe337cfe3#n6935

I've taken time to look at Heirloom Doctools troff and its ancestor DWB 3.3 troff, and I found out to my surprise that this support for newlines as escape delimiters does not appear to be a backward-compatibility provision.

This feature was undocumented in our man pages, incorrectly documented in our Texinfo manual for 20 years, and was associated with the spurious emission of a warning when attempted (bug #63011).

I therefore propose to emit a deprecation diagnostic for this case and remove it from a future (post-1.23) groff release.

I'll return with exhibits of groff, Heirloom, and DWB behavior from their respective Git HEADs...but first I found a bug in our handling of \Z, so I'm going to chase that down first.

G. Branden Robinson <gbranden>
Project 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 barx (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 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2022-10-04 gbranden Summary[troff] deprecate newlines as escape argument delimeters [troff] deprecate newlines as escape argument delimiters
    2022-10-04 gbranden StatusNeed Info Postponed
        Summary[troff]: deprecate newlines as escape argument delimeters [troff] deprecate newlines as escape argument delimeters

    Back to the top

    Powered by Savane 3.9