[csswg-drafts] [css-text] Clarify what ligatures are optional

upsuper has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-text] Clarify what ligatures are optional ==
Recently we got [a bug report](https://bugzilla.mozilla.org/show_bug.cgi?id=1458053) that when `text-justify: inter-character` is specified, some characters which should be composed are instead separated.

I did some investigation and found that the reason is when that is specified, or a non-zero `letter-spacing` is specified, Gecko disables features `liga` and `clig` based on the CSS Text spec which states:
> When the effective spacing between two characters is not zero (due to either justification or a non-zero value of letter-spacing), user agents should not apply optional ligatures.

while in this case, the composition is applied via `clig` feature. It sounds like `clig` is probably not an optional ligature.

But according to @jfkthame in [the bug comment](https://bugzilla.mozilla.org/show_bug.cgi?id=1458053#c5), the example in [OpenType feature registry for `clig`](https://docs.microsoft.com/en-us/typography/opentype/spec/features_ae#a-nameclig-idcligatag-clig) clearly indicates it should be optional ligatures as it falls in the same category as ligatures like "fi". On the other hand, he also noticed that in shaping spec of some scripts, `clig` is also mentioned, which makes it less clear whether it is required, so maybe this should be conditionally treated optional.

It would probably be helpful if the spec can provide recommendation on what ligatures should be considered optional. Also any feedback from i18n wg would be great.

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/2644 using your GitHub account

Received on Sunday, 6 May 2018 10:27:03 UTC