ConTeXt setup in TeX Live
Bruno Voisin
bvoisin at icloud.com
Sun Mar 24 21:30:22 CET 2024
The following problem arose earlier today on the lucida list.
Having installed the Lucida OpenType fonts in TEXMFLOCAL, having installed the files
https://github.com/contextgarden/context/blob/main/tex/context/fonts/mkiv/lucida-math.lfg
https://github.com/contextgarden/context/blob/main/tex/context/fonts/mkiv/lucida-text.lfg
https://github.com/contextgarden/context/blob/main/tex/context/fonts/mkiv/type-imp-lucida.mkiv
also in TEXMFLOCAL, having initialized the ConTeXt setup in TeX Live 2024 with
mtxrun --generate
mtxrun --script fonts --reload
then when applying context to a file containing
\setupbodyfont[lucida]
\starttext
This is a test
\stoptext
no Lucida fonts are used, only Latin Modern.
Looking closer,
mtxrun --script fonts --list --all --pattern='*lucida*'
finds nothing. Actually, inspecting the cache
TEXMFVAR/luametatex-cache/context/a86c089b384a3076dc514ba966a1fac9/fonts/data/names.tma
it appears none of the fonts from TEXMFLOCAL are listed there.
On the other hand, installing ConTeXt in ~/context using the install script from
https://wiki.contextgarden.net/Installation
installing the Lucida fonts into ~/context/tex/texmf-fonts/, setting PATH (on an Apple Silicon Mac) such that ~/context/tex/texmf-osx-arm64/bin comes at the beginning, and running again
mtxrun --generate
mtxrun --script fonts --reload
then afterwards
% mtxrun --script fonts --list --all --pattern='*lucida*'
identifier familyname fontname filename subfont instances
lucidablackletterot lucidablackletterot lucidablackletterot LucidaBlackletterOT.otf
lucidablackletterotblack lucidablackletterot lucidablackletterot LucidaBlackletterOT.otf
lucidablackletterotregular lucidablackletterot lucidablackletterot LucidaBlackletterOT.otf
lucidabrightmathot lucidabrightmathot lucidabrightmathot LucidaBrightMathOT.otf
lucidabrightmathotdemibold lucidabrightmathot lucidabrightmathotdemibold LucidaBrightMathOT-Demi.otf
lucidabrightmathotnormal lucidabrightmathot lucidabrightmathot LucidaBrightMathOT.otf
lucidabrightmathotregular lucidabrightmathot lucidabrightmathot LucidaBrightMathOT.otf
lucidabrightot lucidabrightot lucidabrightot LucidaBrightOT.otf
lucidabrightotdemibold lucidabrightot lucidabrightotdemibold LucidaBrightOT-Demi.otf
lucidabrightotdemibolditalic lucidabrightot lucidabrightotdemibolditalic LucidaBrightOT-DemiItalic.otf
lucidabrightotitalic lucidabrightot lucidabrightotitalic LucidaBrightOT-Italic.otf
lucidabrightotnormal lucidabrightot lucidabrightotitalic LucidaBrightOT-Italic.otf
lucidabrightotregular lucidabrightot lucidabrightot LucidaBrightOT.otf
[...]
and the test file above uses Lucida Bright OT as expected.
Is ConTeXt, as packaged in TeX Live 2024, supposed to look for fonts inside TEXMFLOCAL? Based on /usr/local/texlive/2024/texmf-dist/web2c/texmfcnf.lua, which contains
-- TEXMF = "{$TEXMFHOME,!!$TEXMFPROJECT,!!$TEXMFFONTS,!!$TEXMFLOCAL,!!$TEXMFMODULES,!!$TEXMFCONTEXT,!!$TEXMFSYSTEM,!!$TEXMFMAIN}",
OPENTYPEFONTS = ".;$TEXMF/fonts/{data,opentype}//;$OSFONTDIR",
it would seem yes. But apparently not.
I'm no ConTeXt user myself, I just looked at this to help the user who reported the problem, so I really can't say. I looked for an invocation of mtxrun, similar to "kpsewhich --show-path=.otf", which would say where ConTeXt looks for OpenType fonts, but I could not find any.
Bruno Voisin
More information about the tex-live
mailing list.