I want to understand how to set up fonts in CoNTeXt using \definefontfamily. It works more or less, except that I do not understand how does ConTeXt find the fonts and how to specify their names. In the following example I want to use a totally different font for the slanted alternative:

\definefontfamily [mainface] [rm] [PT Serif] [sl=file:PonomarUnicode]
\definefontfamily [mainface] [ss] [PT Sans]
\definefontfamily [mainface] [tt] [PT Mono]
\definefontfamily [mainface] [mm] [TeX Gyre Pagella Math]



Немного {\em русского} текста для пробы.

And some English too, with a formula:
  \frac{dU_i}{dt} = \int_0^\infty e^{-tx^2} \, dx.


I have all the fonts installed system-wide in /Library/Fonts, PT fonts come with OS X (and I believe many linux distros). TeX Gyre and Ponomar Unicode were installed from the MacTeX as otf's. Ponomar Unicode can be found in /Library/TeX/Root/texmf-dist/fonts/opentype/public/fonts-churchslavonic.

When I compile the document above, it gets all the fonts, except for Ponomar Unicode:

CoNTeXt fonts

If everything was right, the word "русского" should have been emphasised like:


Apparently, I got "file:PonomarUnicode" part wrong. So the question is how to get it to work and how ConTeXt actually resolves font references in \definefontfamily to the font files?

  • 1
    Your ConTeXt installation might be broken. For me your example works just fine with TL 2016. Maybe you don’t even have the font. You can download it from CTAN and place it in the same directory as the document for a test. Jan 11, 2017 at 11:39

1 Answer 1


I am not sure, what was the problem and what exactly solved it. I reinstalled Standalone ConTeXt, and this time I also ran . /Users/myname/context/tex/setuptex, as was suggested at the end of the install. Probably it was also important that all the fonts were already installed before the ContTeXt installation.

Anyway, as for the question of how to refer to the fonts in your document, one can check the list of the fonts available to ConTeXt with mtxrun command:

$ mtxrun --script fonts --list --all --pattern=* | grep Ponomar
ponomarunicode                               ponomarunicode                             /Library/Fonts/PonomarUnicode.otf
ponomarunicodenormal                         ponomarunicode                             /Library/Fonts/PonomarUnicode.otf
ponomarunicoderegular                        ponomarunicode                             /Library/Fonts/PonomarUnicode.otf

Also, be sure to check another answer on the topic.

Update. I installed Neo Euler and it was the same story, I could not use it, even after mtxrun --script fonts --reload. I again reinstalled ConTeXt and it worked.

  • Try mtxrun --script fonts --reload --force.
    – Aditya
    Jan 13, 2017 at 23:35

You must log in to answer this question.

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