groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: eqn formatting issues with grops and gropdf


From: Robert Goulding
Subject: Re: eqn formatting issues with grops and gropdf
Date: Tue, 26 Jul 2022 15:34:39 -0400

Thanks - It would take some work, I think, to make the character names
emitted by preconv match up with those in rfc1345 (but that maybe worth
doing as a comprehensive solution). In the past, I've simply redefined the
Greek letters one by one in just the way you suggested.

I see that the Slant is hardwired into gropdf.pl itself. Would there be any
demand to add a switch, so that the device driver did *not *add slant to
Greek glyphs?

Robert

On Tue, Jul 26, 2022 at 3:22 PM G. Branden Robinson <
g.branden.robinson@gmail.com> wrote:

> Hi Robert,
>
> At 2022-07-26T15:03:43-0400, Robert Goulding wrote:
> > OK, this explains something that has puzzled me. I have installed
> > fonts for Greek text, and while I get fine output from devps, when I
> > generate a pdf directly through gropdf, all of the unaccented Greek
> > characters come out slanted. Attached is an example ms file, and the
> > pdf generated from devps and ps2pdf, and devpdf, using the free Google
> > font Tinos.
>
> I believe groff_char(7) address this point.  Here's what the 1.22.4
> version of the page says.
>
>        Greek glyphs
>
>        These glyphs are intended for technical use, not for real Greek;
>        normally, the uppercase letters have upright shape, and the
>        lowercase ones are slanted.
>
> groff Git HEAD says:
>
> ---
>    Greek glyphs
>        These glyphs are intended for technical use, not for typesetting
>        Greek language text; normally, the uppercase letters have upright
>        shape, and the lowercase ones are slanted.
> [snip]
> History
>        A consideration of the typefaces originally available to AT&T
>        nroff and troff illuminates many conventions that one might
>        regard as idiosyncratic fifty years afterward.  (See section
>        “History” of roff(7) for more context.)  The face used by the
>        Teletype Model 37 terminals of the Murray Hill Unix Room was
>        based on ASCII, but assigned multiple meanings to several code
>        points, as suggested by that standard.  Decimal 34 (") served as
>        a dieresis accent and neutral double quotation mark; decimal 39
>        (') as an acute accent, apostrophe, and closing (right) single
>        quotation mark; decimal 45 (-) as a hyphen and a minus sign;
>        decimal 94 (^) as a circumflex accent and caret; decimal 96 (`)
>        as a grave accent and opening (left) single quotation mark; and
>        decimal 126 (~) as a tilde accent and (with a half‐line motion)
>        swung dash.  The Model 37 bore an optional extended character set
>        offering upright Greek letters and several mathematical symbols;
>        these were documented as early as the kbd(VII) man page of the
>        (First Edition) Unix Programmer’s Manual.
> [snip]
> See also
> [snip]
>        “Nroff/Troff User’s Manual” by Joseph F. Ossanna, 1976, AT&T Bell
>        Laboratories Computing Science Technical Report No. 54, features
>        two tables that throw light on the glyph repertoire available to
>        “typesetter roff” when it was first written.  Be careful of re‐
>        typeset versions of this document that can be found on the
>        Internet.  Some do not accurately represent the original
>        document: several glyphs are obviously missing.  More subtly,
>        lowercase Greek letters are rendered upright, not slanted as they
>        appeared in the C/A/T’s special font and as expected by troff
>        users.
> ---
>
> > Is there any way to tell grofpdf *not *to slant \(*a etc?
>
> Someone may have a better idea, but if I had to do it with my meager
> present knowledge, I'd either redefine the character entities...
>
> .char \[*a] \[u03B1]
> .char \[*b] \[u03B2]
>
> ...and so forth, or use the new rfc1345 macro file contributed by Dorai
> Sitaram.  Its character definitions do _not_ conflict with the special
> character names expected by eqn(1).
>
> ...
> .char \[A%] \[u0386]    \" GREEK CAPITAL LETTER ALPHA WITH ACUTE
> .char \[E%] \[u0388]    \" GREEK CAPITAL LETTER EPSILON WITH ACUTE
> .char \[Y%] \[u0389]    \" GREEK CAPITAL LETTER ETA WITH ACUTE
> .char \[I%] \[u038A]    \" GREEK CAPITAL LETTER IOTA WITH ACUTE
> .char \[O%] \[u038C]    \" GREEK CAPITAL LETTER OMICRON WITH ACUTE
> .char \[U%] \[u038E]    \" GREEK CAPITAL LETTER UPSILON WITH ACUTE
> .char \[W%] \[u038F]    \" GREEK CAPITAL LETTER OMEGA WITH ACUTE
> .char \[i3] \[u0390]    \" GREEK SMALL LETTER IOTA WITH ACUTE AND DIAERESIS
> .char \[A*] \[u0391]    \" GREEK CAPITAL LETTER ALPHA
> .char \[B*] \[u0392]    \" GREEK CAPITAL LETTER BETA
> .char \[G*] \[u0393]    \" GREEK CAPITAL LETTER GAMMA
> .char \[D*] \[u0394]    \" GREEK CAPITAL LETTER DELTA
> ...
> .char \[a%] \[u03AC]    \" GREEK SMALL LETTER ALPHA WITH ACUTE
> .char \[e%] \[u03AD]    \" GREEK SMALL LETTER EPSILON WITH ACUTE
> .char \[y%] \[u03AE]    \" GREEK SMALL LETTER ETA WITH ACUTE
> .char \[i%] \[u03AF]    \" GREEK SMALL LETTER IOTA WITH ACUTE
> .char \[u3] \[u03B0]    \" GREEK SMALL LETTER UPSILON WITH ACUTE AND
> DIAERESIS
> .char \[a*] \[u03B1]    \" GREEK SMALL LETTER ALPHA
> .char \[b*] \[u03B2]    \" GREEK SMALL LETTER BETA
> .char \[g*] \[u03B3]    \" GREEK SMALL LETTER GAMMA
> .char \[d*] \[u03B4]    \" GREEK SMALL LETTER DELTA
> .char \[e*] \[u03B5]    \" GREEK SMALL LETTER EPSILON
> .char \[z*] \[u03B6]    \" GREEK SMALL LETTER ZETA
> .char \[y*] \[u03B7]    \" GREEK SMALL LETTER ETA
> ...
>
> If you're stuck on groff 1.22.4, it's no big deal; the macro file uses
> no post-1.22.4 features.  You can grab it from Git, drop it into your
> tmac search path, and go about your work.
>
>
> https://git.savannah.gnu.org/cgit/groff.git/tree/contrib/rfc1345/rfc1345.tmac
>
> Regards,
> Branden
>


-- 
Robert Goulding
Director, John J. Reilly Center for Science, Technology, and Values;
Director, Program in History and Philosophy of Science;
Assoc. Professor, Program of Liberal Studies,
Fellow, Medieval Institute,
University of Notre Dame.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]