luajittex ignoriert Schriftarten, die luatex findet

luajittex ignoriert Schriftarten, die luatex findet

Mit LuajitTeX, Version 1.10.0 (TeX Live 2019)und ConTeXt ver: 2019.02.26 20:04 MKIV beta fmt: 2019.3.1kann ich folgendes MWE ausführen:

\setupbodyfont[postscript,sans,12pt]
\starttext
Test
\stoptext

Das Hinzufügen % engine=luajittexoben macht alles kaputt:

$ context font.tex 
mtx-context     | redirect texlua -> luajittex: luajittex --luaonly "/home/stenner/.local/bin/mtxrun" --script context font.tex --redirected
mtx-context     | run 1: luajittex --fmt="$TEXDIR/texmf-var/luatex-cache/context/a86c089b384a3076dc514ba966a1fac9/formats/luajittex/cont-en" --jobname="font" --lua="$TEXDIR/texmf-var/luatex-cache/context/a86c089b384a3076dc514ba966a1fac9/formats/luajittex/cont-en.lui" --c:currentrun=1 --c:engine="luajittex" --c:fulljobname="./font.tex" --c:input="./font.tex" --c:kindofrun=1 --c:maxnofruns=9 --c:redirected --c:texmfbinpath="$TEXDIR/bin/x86_64-linux" "cont-yes.mkiv"

This is LuajitTeX, Version 1.10.0 (TeX Live 2019) 
 system commands enabled.
open source     > level 1, order 1, name '$TEXDIR/texmf-dist/tex/context/base/mkiv/cont-yes.mkiv'
system          > 
system          > ConTeXt  ver: 2019.02.26 20:04 MKIV beta  fmt: 2019.3.1  int: english/english
system          > 
system          > 'cont-new.mkiv' loaded
open source     > level 2, order 2, name '$TEXDIR/texmf-dist/tex/context/base/mkiv/cont-new.mkiv'
system          > beware: some patches loaded from cont-new.mkiv
close source    > level 2, order 2, name '$TEXDIR/texmf-dist/tex/context/base/mkiv/cont-new.mkiv'
system          > files > jobname 'font', input './font', result 'font'
fonts           > latin modern fonts are not preloaded
languages       > language 'en' is active
open source     > level 2, order 3, name '/tmp/font.tex'
open source     > level 3, order 4, name '$TEXDIR/texmf-dist/tex/context/fonts/mkiv/type-imp-postscript.mkiv'
open source     > level 4, order 5, name '$TEXDIR/texmf-dist/tex/context/fonts/mkiv/type-imp-texgyre.mkiv'
close source    > level 4, order 5, name '$TEXDIR/texmf-dist/tex/context/fonts/mkiv/type-imp-texgyre.mkiv'
close source    > level 3, order 5, name '$TEXDIR/texmf-dist/tex/context/fonts/mkiv/type-imp-postscript.mkiv'
fonts           > defining > font with asked name 'texgyreheros-regular' is not found using lookup 'file'
fonts           > defining > unknown font 'texgyreheros-regular', loading aborted
[snip]

fonts           > !! No bodyfont has been defined and no defaults have been
fonts           > !! loaded (maybe due to a missing \starttext).

Theoretisch ist ConTeXt in der Lage, die Schriftart zu finden:

$ mtxrun --script fonts --list texgyreheros

identifier            familyname     fontname              filename                   subfont   instances

texgyreherosregular   texgyreheros   texgyreherosregular   texgyreheros-regular.otf

Antwort1

Wenn ConTeXt Dateien nicht finden kann, von denen Sie sicher sind, dass sie da sind, oder sich über nicht definierte Steuersequenzen beschwert, von denen Sie sicher sind, dass sie definiert sind, oder an nicht übereinstimmenden Formaten scheitert, versuchen Sie im Allgemeinen, die ConTeXt-Formate und -Caches neu zu erstellen:

# Remake the formats
context --make
contextjit --make
# Regenerate the file database
mtxrun --generate
mtxrunjit --generate

Wenn Sie Schriftarten nach Schriftnamen und nicht nach Dateinamen laden (z. B. TeX Gyre Herosstatt texgyreheros-regular.otf), sollten Sie auch die Schriftartendatenbank neu laden:

mtxrun --script fonts --reload
mtxrunjit --script fonts --reload

verwandte Informationen