groff
[Top][All Lists]
Advanced

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

Re: [Groff] Query about .special


From: Werner LEMBERG
Subject: Re: [Groff] Query about .special
Date: Sun, 26 Jan 2003 10:29:32 +0100 (CET)

> I'm *often* confused about how groff finds glyphs etc., so I'm
> probably doing something dumb here.

In the CVS version of groff.texinfo I've tried to exactly describe the
mechanism; see subsection `Using Symbols'.

> In order to isolate the problem, I have reduced DAX to a minimal
> size, containing only the ligatures:
>
> name DAX
> internalname DayRoman-Expert
> special      
> spacewidth 250
> encoding text.enc
> charset
> Fi    865,794,11      3       0110    -- H
> Fl    902,794,8       3       0111    -- I
> ff    616,935,8       3       0167    -- w
>
> The following is a minimal file:
>
> .fam DA \" .ft DAR gives the same result.
> .special DAX

For your problem you should use rather say

  .fspecial DAR DAX

Saying

  .special DAX

has the bad side effect that the list of special fonts from previous
.special calls is oeverwritten with `DAX'.  This isn't what you
normally want (well, for PostScript it really doesn't matter since no
call to .special is used by default).  Additionally, any other font
which doesn't have, say, \[Fl] would use this ligature of DAX.

> .LP
> .char \[foo] \f[DAX]\N'73'
> .lp
> fire flap riffle buffed difficult. \(Fi\(Fl\(ff\[foo]
>
> Now, this is typeset in Day-Roman; but none of the explicitly
> requested ffi ffl ff ligatures -- \(Fi etc. -- come out; they are,
> instead, f followed by fi ligature etc.  But when I request the
> character (glyph? I forget) \[Fi], which is not found in the
> ordinary mounted font, shouldn't it be found in the special font
> DAX?

No.  For finding ligatures, only real glyphs of the current font are
used: no special fonts, no entities defined with .char and friends.
I've just added an entry to groff.texinfo.

> My second question.  Assuming that I can map the characters \[Fi]
> etc. correctly; how do I get groff to use them automatically for
> ligatures in text?  I assume I need a ligatures entry in the font
> file; but do the more complex ligatures get added to the line
> already in DAR, or do I put a line for them in DAX?

What you want is not possible (yet).  I wonder whether I shall
implement something like that.  OTOH, the whole ligature mechanism has
to be redone to enable more ligatures than ff, fi, fl, ffi, and ffl:
Instead of handling ligatures specially I will probably introduce
fontsets, making this problem vanish completely.


    Werner

reply via email to

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