bugGNU roff - Bugs: bug #59531, configure: warn people of...

 
 

bug #59531: configure: warn people of Ghostscript bug: `lh` glyph is shifted horizontally

Submitter:  Werner LEMBERG <wl>
Submitted:  Tue 24 Nov 2020 11:11:12 AM UTC
   
 
Category:  General Severity:  3 - Normal
Item Group:  Build/Installation 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 09:35:41 AM UTC, comment #5: 

comment #3:

> And the gs people confirmed.  The bug was introduced in gs version 9.00 – ten(!) years ago, and nobody cared enough or noticed the issue to submit a bug report, including myself...
>
> As soon as a new gs release x.y appears with this bug fixed I suggest that groff's `configure.ac` script gets modified to emit a warning if a gs version in the range [9.00,x.y[ is used.


Thanks, Werner.  I've done this, [9,00,9.54).

comment #4:

> Version 9.54.0 of ghostscript has fixed it.


Thanks, Bjarni!


commit ebc2637532ff35b1261f6d7cc207f122dc4f2e26
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Sun May 16 19:18:42 2021 +1000

    [configure]: Warn of buggy Ghostscript versions.

    * m4/groff.m4 (GROFF_GHOSTSCRIPT_VERSION_CHECK): Add new autoconf macro
      to check if Ghostscript version.  Versions 9.00 <= x < 9.54 suffer
      from a rendering glitch that affects the AT&T troff (and groff)
      special character \(lh; see
      <https://bugs.ghostscript.com/show_bug.cgi?id=703187>.  Store the
      result of the check.

      (GROFF_GHOSTSCRIPT_VERSION_NOTICE): Add new macro to report the
      problem detected by GROFF_GHOSTSCRIPT_VERSION_CHECK to the user.

    * configure.ac: Call the macros in appropriate places.

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

    I did not name GROFF_GHOSTSCRIPT_VERSION_NOTICE consistently with other
    groff autoconf macros of similar purpose; I find the existing names,
    ending in "_CHECK", confusing because these don't perform checks except
    in a trivial sense (effectively of a single Boolean variable).  Instead
    they are wrappers around a lengthy parameter to AC_MSG_NOTICE.

    By contrast, GROFF_GHOSTSCRIPT_VERSION_CHECK does the actual ugly
    business of calling `gs -v`, munging the resulting string, and
    comparison.  (I tried AX_COMPARE_VERSION but couldn't get it to work,
    and in any case the Ghostscript versioning scheme is simple and sane.)

    I'm open to feedback on writing more idiomatic autoconf macros.


G. Branden Robinson <gbranden>
Group administrator
Sun 09 May 2021 11:20:27 PM UTC, comment #4: 

Version 9.54.0 of ghostscript has fixed it.

Bjarni Ingi Gislason <bjarniig>
Thu 26 Nov 2020 06:30:53 PM UTC, comment #3: 

And the gs people confirmed.  The bug was introduced in gs version 9.00 – ten(!) years ago, and nobody cared enough or noticed the issue to submit a bug report, including myself...

As soon as a new gs release x.y appears with this bug fixed I suggest that groff's `configure.ac` script gets modified to emit a warning if a gs version in the range [9.00,x.y[ is used.

Werner LEMBERG <wl>
Group administrator
Thu 26 Nov 2020 12:30:26 PM UTC, comment #2: 

Seems to be a ghostscript problem.  With version 8.56, for example, the glyph is displayed correctly.  Reported as

  https://bugs.ghostscript.com/show_bug.cgi?id=703187

Werner LEMBERG <wl>
Group administrator
Wed 25 Nov 2020 06:42:11 PM UTC, comment #1: 

  I noticed this when I looked at the file "fonts_x.ps" in
"build/contrib/hdtbl/examples" some years ago.

  The last page (38) shows the reversed ZapfDingbats glyphs.
They are all shifted to the left, as they are created by mirroring the
ZapfDingbats glyphs by the y-axis.

  I think, what needs to be done is to shift the x-coordinates to the
right by the width of the glyph.

  As a temporary correction of the use of these glyphs, a distance
correction is needed, for example

.ad l
.sp 2
A \(lh A
.sp 1
.nr w \w'\(lh'u
A \h'\nwu'\(lh\h'-\nwu' A

(correction should be encapsulated in a macro?)

  Two horizontal movements are needed.

  This work-around could be mentioned in the PROBLEM file.

Bjarni Ingi Gislason <bjarniig>
Tue 24 Nov 2020 11:11:12 AM UTC, original submission:  

[groff 1.22.3]
[groff 1.23.0.rc1.37-3413]


This input file `lh.tr`

A \(lh A

if processed with

groff lh.tr > lh.ps

produces the attached image.  The mirrored glyph has a wrong
horizontal offset.

No time to debug and/or bisect this further, sorry!

Werner LEMBERG <wl>
Group administrator

 

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

Attach Files:
   
   
Comment:
   

Attached Files
file #50333:  lh.png added by wl (738B - image/png)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by gbranden (Updated the item)
  • -email is unavailable- added by bjarniig (Posted a comment)
  • -email is unavailable- added by wl (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
    2022-06-15 gbranden CategoryNone General
    2021-05-16 gbranden StatusNone Fixed
        Open/ClosedOpen Closed
    2021-05-16 gbranden CategoryFont devps None
        Item GroupIncorrect behaviour Build/Installation
        Assigned toNone gbranden
        Planned ReleaseNone 1.23.0
        Summary`lh` glyph is shifted horizontally configure: warn people of Ghostscript bug: `lh` glyph is shifted horizontally
    2020-11-24 wl Attached File- Added lh.png, #50333

    Back to the top

    Powered by Savane 3.13-758e.
    Corresponding source code