Thank you for the reply. I was aware that I can install fonts in ` tex/texmf-fonts `. However, the idea behind my odd request was the need to have the entire project contained in a single directory. which I can share with people and compile on any computer with a working TeX Live, without them having to install any fonts or dependencies. I tried setting the RUNTIMEFONTS env variable, and it does exactly what I want. The fact that it leaves garbage in the cache that can influence other, unrelated projects, is a bit unsettling, I guess I'll just have to remember to tell people to clean the cache. Thanks again, Krešimir On Wed, 20 Nov 2019 at 09:49, Hans Hagen wrote: > On 11/19/2019 10:50 AM, Krešimir Cindrić wrote: > > I'm /very/ new to ConTeXt, so please excuse the newbie question. I'm > > trying to load a font from a file. The |.otf| files are stored in a > > directory named |fonts/| which is in the directory of the |.tex| file > > I'm trying to compile. > > > > This code does not work, and reverts to the default font: > > > > |\definefontfamily[mainface][serif][My Font][tf=file:./fonts/MyFont.otf, > > it=file:./fonts/MyFont-It.otf, bf=file:./fonts/MyFont-Bd.otf, > > > bi=file:./fonts/MyFont-BdIt.otf]\setupbodyfont[mainface]\starttext\title{Hello, > > > world!}Hello World! \emph{Hi!}\stoptext| > > > > However, if I copy the |.otf| files into the same directory as the > > |.tex| file, and write |tf=file:MyFont.otf| etc, then everything works > > fine. > > > > How do I specify a relative path to the font, inside the |.tex| file? > > > > In LaTeX, I would use |fontspec| package and do the following: > > > > |\setmainfont{MyFont.otf}[Path =./fonts/, ItalicFont =MyFont-It.otf]| > > > > However, I couldn't find the equivalent syntax for |\definefontfamily| > > in ConTeXt. > > > > Just to mention, I am using ConTeXt version: 2019.03.21 21:39 as part of > > TeX Live, on Manjaro Linux. > It is normally a bad idea to have fonts in such a place. You never know > how it will clash with other fonts (versions, similar names, etc). > > In context, we have > > tex/texmf-fonts > > so best is to use: > > tex/texmf-fonts/data/MyFont-It.otf > > etc, them run mtxrun --generate and let the system sort it out. > > Another option is to set the RUNTIMEFONTS environment variable. > > Like: > > \starttext > > % \ctxlua{fonts.names.addruntimepath("./myfonts")} > \ctxlua{os.setenv("RUNTIMEFONTS","./myfonts")} > > Hello World! > > \definefont[myfont][file:myfont.otf] > > {\myfont Hello World!} > > \stoptext > > But .. you need tio wipe such a font from the cache when you move it and > other projects using a different font with the same name can be in > trobles. Fonts are best managed very careful as they are responsible for > long term inconsistencies. > > There is no official interface from tex this (maybe WS has a suggestion > that fits into the definefontfamily subsystem) > > Hans > > ----------------------------------------------------------------- > Hans Hagen | PRAGMA ADE > Ridderstraat 27 | 8061 GH Hasselt | The Netherlands > tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl > ----------------------------------------------------------------- >