This is a follow up question to What is the state of support for (Unicode) Indic scripts in Context?

I have been trying to get texexec/mkii to work with XeTeX engine, but the resulting rendering is incorrect - reordering of Malayalam characters do not happen.

Running the following minimal example through XeLaTeX (version 3.1415926-2.5-0.9998 TeXLive 2012) gives correct output:

മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്

Correct rendering screenshot here:

enter image description here

The same with ConTeXt "texexec --xetex" (version ConTeXt ver: 2012.05.30 11:26 MKII fmt: 2013.1.1 int: english/english) results in incorrect rendering.

മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്

Incorrect rendering screenshot: enter image description here

What possibly am I missing? The font used is Rachana, which can be found from Savannah download page (version 5.0.1)

  • Welcome to TeX.SX. Commented Jan 3, 2013 at 16:22
  • Simplefonts module only works for MkIV. For xetex, you need to define typescripts using traditional methods.
    – Aditya
    Commented Jan 4, 2013 at 3:43
  • @Aditya: Could you explain a little more or give a pointer on how to do that for Indic scripts? AFAIU, typescripts are using the .tfm font format rather than otf/ttf.
    – Rajeesh
    Commented Jan 4, 2013 at 5:37
  • Documentation here wiki.contextgarden.net/TypeScripts says that typescripts will not work with XeTeX. I followed the guide here wiki.contextgarden.net/Fonts_in_XeTeX using 'definetypeface' and 'setupbodyfont' but the rendering is incorrect.
    – Rajeesh
    Commented Jan 4, 2013 at 8:25
  • Look at type-*.mkii files in the distribution for examples of typescripts. To get correct rendering of indic scripts, you need to set up appropriate font features(the mapping=... part in the Typescripts page on the wiki), but I do not know what these font mappings are. The easiest way to proceed is to look at an xetex example in plain tex; that should work out of the box with xetex as well. Otherwise, post to the context mailing list where someone familiar with using indic scripts with xetex might be able to answer.
    – Aditya
    Commented Jan 4, 2013 at 14:05

1 Answer 1


You need to define a font feature set to specify font script, language or any other feature you want to use.

മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ് 

features=malayalam can be passed to typescripts as well, in place of features=default in the wiki. All features passed to \definefontfeature are in key value syntax, so instead of +liga;-kern in the raw XeTeX syntax, ConTeXt uses liga=yes,kern=no, but the tags are the same (no user friendly names as in fontspec).

  • Thank you Khaled!!! Defining features indeed produce the correct rendering.
    – Rajeesh
    Commented Apr 23, 2013 at 19:49

You must log in to answer this question.

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