Bug 9079 - Latin ligature bug
Summary: Latin ligature bug
Status: RESOLVED FIXED
Alias: None
Product: DejaVu
Classification: Unclassified
Component: General (show other bugs)
Version: unspecified
Hardware: All Linux (All)
: high normal
Assignee: Deja Vu bugs
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-11-19 14:57 UTC by Stefan Baums
Modified: 2007-10-11 09:35 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

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.