[XeTeX] ZWNJ is being ignored

Khaled Hosny khaledhosny at eglug.org
Sun Apr 28 18:07:41 CEST 2013

On Sun, Apr 28, 2013 at 06:02:47PM +0200, Georg Duffner wrote:
> Am 2013-04-28 17:57, schrieb Khaled Hosny:
> >On Sun, Apr 28, 2013 at 02:56:11PM +0200, Georg Duffner wrote:
> >>Hi,
> >>
> >>I’ve run across a bug in v.0.9999.0 from tlcontrib and I’d like to
> >>know if this is still true:
> >>
> >>XeTeX 0.9999.0 ignores uni200C (zero width non joiner) with latin
> >>script. It is needed for inhibiting ligatures at certain places in
> >>german. Babel provides a shorthand for this purpose ("|) which
> >>inserts a tiny kern between the two letters but that prevents
> >>contextual lookups. If I insert a ZWNJ at that place, the ligature
> >>substitution takes place nevertheless.
> >
> >If I use my installed version of EB Garamond (0.014e) ZWNJ works as
> >expected, switching to the you linked causes it be ignored, so my guess
> >is that you changed something in the font that is causing HarfBuzz to
> >ignore the ZWNJ.
> >
> >Reading the description here, I think it is the use of contextual
> >substitution for f-ligatures that is causing ZWNJ to be ignored.
> >http://cgit.freedesktop.org/harfbuzz/commit/?id=607feb7cff0e50f8738d2e49ca463fc9d7d494de
> >
> >That is different from Uniscribe behaviour, so I guess you should raise
> >the issue with HarfBuzz developers.
> Are you sure?
> In Firefox v.20 (not 21 as I wrote before) it gets rendered
> correctly (and in Fontforge it does so too).

Firefox 20 is probably using an older HarfBuzz version, since this logic
is relatively new, and FontForge does not use HarfBuzz so that is not


More information about the XeTeX mailing list