[XeTeX] ZWNJ is being ignored

Khaled Hosny khaledhosny at eglug.org
Sun Apr 28 17:57:11 CEST 2013


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.

Regards,
Khaled


More information about the XeTeX mailing list