When I started to play with XeTeX, I noticed, that some of the True Type fonts does not produces the standard five ligatures properly (fi, fl, ff, ffi, ffl), even if they have some of the proper character for that.

Is it possible to define such ligatures for certain fonts?


1 Answer 1


You can use teckit character mapping to map your input to code points for ligatures. This is however is limited to ligatures that are encoding in Unicode. I can't find documentation for it though.

On the other hand, luatex provides a more general solution through feature files that can augment the font with any OpenType data on the fly, including kerning and complex substitutions (check fontspec manual for some examples).

  • Right, teckit can only map Unicode to Unicode, so by definition non-Unicode ligatures cannot be supported (unless they have PUA slots, in which case you could create a font-specific mapping). Sep 19, 2010 at 5:46
  • It still sounds a fair solution, since I would need to redefine everything in a different way if the font is not Unicode. So I only need to search for teckit, right?
    – Adam L. S.
    Sep 19, 2010 at 21:50
  • There are some map files in texlive under texmf-dist/fonts/misc/xetex/fontmapping/ you may check those, but I'm not sure how to install a new map. Sep 20, 2010 at 12:56
  • 1
    I've done some research about that over my [other question][1] that I shamelessly answered by my self. To sum it up, I need a converter to download, then copy my files to the path you mentioned. (Although any of the specified texmf dir can be used.) [1]: tex.stackexchange.com/questions/3458/…
    – Adam L. S.
    Sep 26, 2010 at 8:52

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .