Bug 9079

Summary: Latin ligature bug
Product: DejaVu Reporter: Stefan Baums <baums>
Component: GeneralAssignee: Deja Vu bugs <dejavu-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: high CC: nico
Version: unspecified   
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Stefan Baums 2006-11-19 14:57:45 UTC
First of all, many thanks for reenabling the standard ligatures (ff fi fl ffi
ffl) in Sans!  The ligatures ffi and ffl are still broken, however, because you
only specify the substitutions:

   f + f + i -> ffi   /   f + f + l -> ffl

As a consequence, when rendering the character sequences ffi or ffl, Pango first
combines the two f into one ff ligature, and when it gets to the i or l part,
the substitution rule no longer applies because there are no longer two f plus i
/ l in the input, but one ff ligature plus i / l.  I believe the right thing to
do (and it definitely works) is to have two substitution, one of which takes the
precombined ff ligature as input:

   f + f + i -> ffi   /   f + f + l -> ffl
   ff    + i -> ffi   /   ff    + l -> ffl

Also, it would be really nice if the standard ligatures could also be reenabled
in all other DejaVu fonts (except for SansMono, of course).

Thanks,
Stefan
Comment 1 Stefan Baums 2006-11-19 15:02:38 UTC
Actually, Pango breaks up ffi into f fi (not ff i).  But the fix should still be
as above.
Comment 2 NMONNET 2007-10-11 09:11:08 UTC
Is there a workaround? It makes Dejavu(Sans|Serif) unusable for me. 
Comment 3 Ben Laenen 2007-10-11 09:23:32 UTC
NMONNET: a workaround for what?

I think this bug was fixed long ago btw... Ligatures ffl and ffi work flawlessly now with Pango, so marking as fixed.
Comment 4 NMONNET 2007-10-11 09:35:41 UTC
I thought this was another bug, I created a new bug report to describe it:
#12780

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.