Discretionary ligatures (dlig) should be disabled by default




Layout: Text
4 years ago
4 years ago


(Reporter: ebrahim, Unassigned)


26 Branch
Windows 8.1

Firefox Tracking Flags

(Not tracked)



(1 attachment)



4 years ago
Created attachment 8363649 [details]
Currect Firefox dlig.png

User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0 (Beta/Release)
Build ID: 20131205075310

Steps to reproduce:

Open data:text/html;charset=utf8,<div>محمد</div><div style='-moz-font-feature-settings: "dlig" 0;'>محمد</div>

Actual results:

dlig shouldn't be applied (it's default value must be 0, just like second line that I did disable it manually)

Expected results:

Both line should be same

Discretionary ligatures is applied on first line but per http://www.microsoft.com/typography/OpenTypeDev/arabic/intro.htm it shouldn't really (see dlig on features table)

This is what Chrome also is doing; dlig only if you want will be applied, see data:text/html;charset=utf8,<div>%D9%85%D8%AD%D9%85%D8%AF</div><div style='-webkit-font-feature-settings: "dlig";'>%D9%85%D8%AD%D9%85%D8%AF</div> (first line is okay as expected and second is like default firefox behavior which for firefox is wrong)

Why this is important? Because on Persian script dlig is not common at all and in it's specification it wasn't need it will be enabled by default anyway.


4 years ago
Component: General → Layout: Text

Comment 1

4 years ago
I half-agree with you.  But I think Uniscribe applies dlig, the spec says do it, and so we do it too.  That particular form is a font bug IMO.  At least it should have rules to NOT do it for Persian (but do for Arabic).  Donno.  Jonathan?  Khaled?  John?

Comment 2

4 years ago
That is the abominable محمد ligature I have seen (the latest version of Times New Roman it seems), that alone justifies disabling dlig by default :) Apart from that I agree with Behdad, the spec says apply it, so HarfBuzz is correct, but the spec should be fixed though.

Comment 3

4 years ago
Hmm, http://www.microsoft.com/typography/OpenTypeDev/arabic/intro.htm#features says it is off by default, but Uniscribe seems to apply it here. I’m not sure then, but I think HarfBuzz should disable it by default regardless of what Uniscribe since it is likely a bug.

Comment 4

4 years ago
Sorry for the spam, but actually HarfBuzz dropped default applications of ‘dlig’ a while ago http://cgit.freedesktop.org/harfbuzz/commit/?id=580d5eb93af5bbbc64994b626d5e011e2c256d74 (I think ‘cswh’ should be dropped as well, per the updated spec). So it seems version of HarfBuzz in Firefox 26 is slightly outdated.

Comment 5

4 years ago
Interesting.  Hadn't noticed the updated spec.  Pushed out change to disable 'cswh' also.

Comment 6

4 years ago
Thank you Khaled and Behdad, I checked recent Firefox nightly version, 29.0a1 (2014-01-22) and it is fixed.
Last Resolved: 4 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.