On 2/5/2016 8:47 AM, Pablo Rodriguez wrote:
On 02/04/2016 10:13 PM, Hans Hagen wrote:
On 2/4/2016 9:27 PM, Pablo Rodriguez wrote:
[...]
The ff-ligature prevents hyphenation with TeX Gyre Pagella, but not with
MinionPro. (This is the opposite of what I reported before.)

it depends on the complexity of the ligature .. ff is not so much an
issue but you can have ff + i = ffi etc and we need to deal with kerning
too (it depends a bit on how the opentype features are applied and we
can handle quite some weird ligature implementations)

the latest mechanism in context can deal with quite some situations but
at some point has to make decisions (in order not to loose for instance
kerns; double chained ligatures would result in way more overhead and is
not worth the trouble)

one might wonder if we never had these  f[fil] ligatures of if ancient
technology had provides hundreds of them combining upto 4 characters etc
etc.

Many thanks for the explanation, Hans.

I see the decisions ConTeXt has to make may be compromises in some cases.

the f + f can become a ff glyph but also a special first or second f or even two special f's and the same can happen with this result and the following i which can become a special i, or just the i partly overlayed or a ligature or break the ff into f and fi or there can be no replacements but just kerning

tex does have a concept of chained discretionary nodes (max 2) but that is pretty complex; such a chained discretionary node set + complex ligatures is no fun to deal with and because we also want to do other things in context (font handling is only one of the many things we do at that level)

we don't want to build a solution tree of thousands of possibilities to feed into the par builder (the current mechanism is already quite complex but still quite fast too) just for the sake of an occasional three character ligature in latin which is not even always permitted due to language constraints

Hans

-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
      tel: 038 477 53 69 | www.pragma-ade.com | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to