[HarfBuzz] Fwd: ZWNJ is being ignored

Georg Duffner g.duffner at gmail.com
Tue Apr 30 12:47:13 PDT 2013


Hi,

I’ve reread 
http://cgit.freedesktop.org/harfbuzz/commit/?id=607feb7cff0e50f8738d2e49ca463fc9d7d494de 
several times now. I don’t understand why ZWNJ should be ignored in 
chaining contextual environments. Especially. if lookups include ZWNJ it 
shouldn’t be ignored. Although some features may be called something 
with ligature, it’s not mandatory that their lookups be ligature 
lookups. IMO, it’s not very strange to think of contextual lookups in a 
liga feature.

Best regards,
Georg

Am 2013-04-28 23:27, schrieb Georg Duffner:
> Hi,
>
> I posted this on the XeTeX list. Khaled meant it could have something to
> do with
> http://cgit.freedesktop.org/harfbuzz/commit/?id=607feb7cff0e50f8738d2e49ca463fc9d7d494de
>
>
> Recently I’ve changed the behaviour of liga. The f-ligatures are now
> formed by component glyphs which get substituted by means of contextual
> chaining lookups. Thus, instead of
>
> sub f f by f_f; the lookup is now sub f' f by f._f;
>
> This way I need much less glyphs in the font and it’s much easier to
> produce the whole range of ligatures.
>
>
> -------- Original-Nachricht --------
> Betreff: ZWNJ is being ignored
> Datum: Sun, 28 Apr 2013 14:56:11 +0200
> Von: Georg Duffner <g.duffner at gmail.com>
> An: xetex at tug.org >> Unicode-based TeX for Mac OS X and other platforms
> <xetex at tug.org>
>
> 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.
>
> In EB Garamond this matters because there are two differently shaped
> "f"s and I want two non ligated "f"s following each other to take the
> same shape. LuaTeX and FF21 do this correctly (see:
> http://georgduffner.at/ebgaramond/tests/zwnj.html).
>
> The minimal example contains different ways of (not) breaking up
> ligatures. The last two contain the ZWNJ character. Please use this
> version of the font:
> http://georgduffner.at/ebgaramond/fonts/EBGaramond12-Regular.otf
>
> \documentclass{scrartcl}
> \usepackage{fontspec}
> \setmainfont{EB Garamond}
> \usepackage[german]{babel}
> %\defineshorthand{"|}{\char"200C}
> \begin{document}
> \addfontfeature{Language=German}
> auffallend auffällig\\
> auf"|fallend auf"|fällig\\
> auf\/fallend auf\/fällig\\
> auf{}fallend auf{}fällig\\
> auf\char"200C fallend auf\char"200C fällig\\
> auf‌fallend auf‌fällig
> \end{document}
>
> Best regards,
> Georg
>
>


-- 
EB Garamond: http://www.georgduffner.at/ebgaramond



More information about the HarfBuzz mailing list