URL: <https://savannah.gnu.org/bugs/?67244>
Summary: [devpdf,devps] special character `*m` should not alias `mu` Group: GNU roff Submitter: gbranden Submitted: Wed 25 Jun 2025 09:22:36 PM GMT Category: Font - others/general Severity: 3 - Normal Item Group: Rendering/Cosmetics Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Planned Release: None _______________________________________________________ Follow-up Comments: ------------------------------------------------------- Date: Wed 25 Jun 2025 09:22:36 PM GMT By: G. Branden Robinson <gbranden> \[mu] and \[*m] should not be synonyms. The former is the "micro sign" and should be upright. I observe this misbehavior as far back as _groff_ 1.22.3. The latter is, in _troff_ tradition, a lowercase Greek letter mu for mathematical applications, which means that it should be slanted. Because the lowercase Greek letters supplied by PostScript's Symbol font are upright, historically that device developed a slanted-symbol font "SS" to provide these glyphs. Conventionally, that font is mounted prior to "S" in the output device's "DESC" file. I think the reason for that is to ensure that the character resolution process finds any special characters that are "Greek" in the slanted symbol face before the unslanted one. It's worth observing that in both _troff_ and PostScript, Symbol fonts are by definition unstyled; they don't have "strong" or "heavy" (bold) or "oblique" or "slanted" (italic) variants, or at least not in separate font files. Where such variants exist, they have separate identities, encoded at different indices in fonts and tend to get different code points in Unicode. It is a historical accident that _troff_ made one choice about how "unstyled" lowercase Greek letters should appear, and PostScript made another. Arguably, PostScript's is more principled, whereas _troff_'s was more practical since people typesetting mathematics want slanted lowercase Greek letters much more commonly than upright ones. The purpose of this ticket is only to fix the Greek lowercase mu; see attachments. But to resolve it we should also fix auxiliary files used in font generation (like the map files _afmtodit_ uses), and _afmtodit_ itself, as necessary, to ensure that this bug doesn't resurrect accidentally. However in the longer term I think we can also arrange for the aforementioned convention to be unnecessary. No "S" font should provide lowercase Greek letters as _groff_ defines them (see _groff_char_(7)), and any "SS" font that exists should provide **only** lowercase Greek letters. Input: $ cat ATTIC/greek-letters.groff \Z'Greek\ \[*a]\[*b]\[*g]\[*d]\[*e]\[*z]\ \[*y]\[*h]\[*i]\[*k]\[*l]\[*m]\ \[*n]\[*c]\[*o]\[*p]\[*r]\[*s]\ \[*t]\[*u]\[*f]\[*x]\[*q]\[*o]\ \[+h]\[+p]\[+f]\[ts]'\ \l'16m\[ru]' .\" Prior to groff 1.24, we need extra space or the output device name .\" overprints the Greek letters. This is because the glyphs in groff's .\" 1.24 font are scaled down from their upright counterparts (by 0.89), .\" making a better match with groff's historical PostScript face. .if '\?\*[.T]\?'\?pdf\?' \h'4m' \*[.T] _______________________________________________________ File Attachments: ------------------------------------------------------- Name: greek-letters-1.22.3.ps Size: 7KiB <https://file.savannah.gnu.org/file/greek-letters-1.22.3.ps?file_id=57328> ------------------------------------------------------- Name: groff_lowercase_Greek_mu_is_wrongly_upright.png Size: 12KiB <https://file.savannah.gnu.org/file/groff_lowercase_Greek_mu_is_wrongly_upright.png?file_id=57329> AGPL NOTICE These attachments are served by Savane. You can download the corresponding source code of Savane at https://savannah.gnu.org/source/savane-ef91de49e2976f6d280ab934c829bfe625128396.tar.gz _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?67244> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/
signature.asc
Description: PGP signature