bugGNU roff - Bugs: bug #62816, rename the \& escape...again

 
 

bug #62816: rename the \& escape...again

Submitter:  Dave <barx>
Submitted:  Tue 26 Jul 2022 01:57:58 PM UTC
   
 
Category:  Core Severity:  1 - Wish
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
   

Jump to the original submission

Sun 12 Feb 2023 09:06:45 PM UTC, comment #8: 


commit 0a90a2cef530b662b25ea5da23617380dcd3607e
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Sun Feb 12 14:10:59 2023 -0600

    [docs]: Fix Savannah #68216.

    [docs]: Re-re-christen 'ESCAPE_AMPERSAND' ('\&').  Now call it a
    (non-transparent) "dummy character".  Also rechristen
    'ESCAPE_RIGHT_PARENTHESIS', ('\)') as the "transparent dummy character";
    it has no impact on sentence-ending detection.

    * doc/groff.texi:
    * doc/meref.me.in:
    * man/groff.7.man:
    * man/groff_diff.7.man:
    * man/roff.7.man:
    * src/preproc/refer/refer.1.man:
    * tmac/groff_man.7.man.in: Do it.

    Fixes <https://savannah.gnu.org/bugs/?62816>.  Thanks to Dave Kemper for
    the report and to the groff mailing list for the vigorous discussion.  I
    don't expect my solution to please everyone.


G. Branden Robinson <gbranden>
Group administrator
Sun 31 Jul 2022 10:28:15 PM UTC, comment #7: 

Had I bothered to RTFM before posting comment #5, I'd have added one more:

  • mapping a character to nothing with the .tr request
Dave <barx>
Group Member
Sun 31 Jul 2022 05:07:49 AM UTC, comment #6: 

comment #5:

> It's probably worth cataloguing here all the use cases for \& that have been cited so far in discussion.  This is likely also an incomplete list.
>
>  * placing a literal control character at the beginning of an input line
>  * preventing adjacent characters from being kerned or made a ligature
>  * suppressing end-of-sentence detection
>  * making marginalia (numbers or marks) perceive a line as nonblank


Thanks for enumerating these, Dave.  Except for the third, I think all also apply to the (groff) `\)` escape sequence.

>  * in tbl, aligning numeric columns
>  * in tbl, marking empty entries
>
> (The last two items sound to me like distinct uses, but they may be variants of the same thing; I don't know tbl at all.  I got these respectively from http://lists.gnu.org/r/groff/2022-06/msg00053.html and http://lists.gnu.org/r/groff/2022-06/msg00017.html.)


They are not the same thing; I implemented the second of these post-groff 1.22.4.

G. Branden Robinson <gbranden>
Group administrator
Fri 29 Jul 2022 11:12:30 PM UTC, comment #5: 

It's probably worth cataloguing here all the use cases for \& that have been cited so far in discussion.  This is likely also an incomplete list.

  • placing a literal control character at the beginning of an input line
  • preventing adjacent characters from being kerned or made a ligature
  • suppressing end-of-sentence detection
  • making marginalia (numbers or marks) perceive a line as nonblank
  • in tbl, aligning numeric columns
  • in tbl, marking empty entries


(The last two items sound to me like distinct uses, but they may be variants of the same thing; I don't know tbl at all.  I got these respectively from http://lists.gnu.org/r/groff/2022-06/msg00053.html and http://lists.gnu.org/r/groff/2022-06/msg00017.html.)

Dave <barx>
Group Member
Tue 26 Jul 2022 05:51:49 PM UTC, comment #4: 

I'll just point out that I think these additional cases support my proposal of calling `\&` a "dummy character" escape sequence.

Possibly with other adjectives, but that as the core noun phrase.

G. Branden Robinson <gbranden>
Group administrator
Tue 26 Jul 2022 04:52:23 PM UTC, comment #3: 

Good catch.  And it works not just for margin characters, but line numbers as well.

.nf
.nm 1
Words.

Words words words.

Note the difference if you replace the blank line with a \&.

Dave <barx>
Group Member
Tue 26 Jul 2022 04:26:02 PM UTC, comment #2: 

Found another use:-

.mc to assign a margin character skips blank lines. \& prevents this happening.

Deri James <deri>
Group Member
Tue 26 Jul 2022 02:15:33 PM UTC, comment #1: 

I'll also take the opportunity to put in another plug for my current leading favorite term, suggested by Richard Morse (http://lists.gnu.org/r/groff/2022-06/msg00015.html): no-op escape sequence.

In addition to the technical reasons for this I cited in http://lists.gnu.org/r/groff/2022-06/msg00029.html, it has two other things going for it:

Dave <barx>
Group Member
Tue 26 Jul 2022 01:57:58 PM UTC, original submission:  

In short, no one seems happy with how the docs currently identify it: non-printing input break.

Discussion about this has ranged across numerous threads, so this bug is intended to serve as a centralized pointer to all the comments made so far.  A (probably incomplete) rundown of them is:


(Some of these threads started out as other topics, so I picked the point where the topic of \&'s name came up, so that reading forward in a thread will be on topic but not reading backward.  From these anchor points, some threads talk about both \& and other topics, so there's still some wading through unrelated material required, if anyone's masochistic enough to to try read the whole thing.)

Dave <barx>
Group Member

 

(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 bgarrigues (Updated the item)
  • -email is unavailable- added by gbranden (Posted a comment)
  • -email is unavailable- added by deri (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 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2023-02-12 gbranden StatusIn Progress Fixed
        Open/ClosedOpen Closed
    2023-02-12 gbranden StatusNone In Progress
        Assigned toNone gbranden
    2022-08-28 bgarrigues Planned ReleaseNone 1.23.0

    Back to the top

    Powered by Savane 3.13-f8d8.
    Corresponding source code