使用 LuaLaTeX 进行编译并且最近的更新似乎产生了一些干扰:
...
) (/usr/local/texlive/2013/texmf-dist/tex/latex/fontspec/fontspec-luatex.sty
(/usr/local/texlive/2013/texmf-dist/tex/latex/base/fontenc.sty
(/usr/local/texlive/2013/texmf-dist/tex/latex/euenc/eu2enc.def)
(/usr/local/texlive/2013/texmf-dist/tex/latex/euenc/eu2lmr.fd)
luaotfload | db : Version mismatch; expected 2.207, got 2.204
luaotfload | db : Force rebuild
我让重建进行了 40 多分钟,我的所有 CPU 都被这个过程耗尽了,所以我中止了编译。
我已经发现了这个问题邮件列表。 但
luaotfload-tool --update --force -vv
导致错误:
/usr/texbin/luaotfload-tool:1257: unfinished string near '"Fetching comparison between %s and %s, z'
我找不到任何帮助。该怎么办?
(TeXLive2013,Mac OS X)
答案1
嗯,我遇到了同样的问题。
~/.texlive2013/
在我的 Mac OS X (Snow Leopard) 上不存在
FWIW 有
/private/var/db/receipts/org.tug.mactex.texlive2013.bom
和
/private/var/db/receipts/org.tug.mactex.texlive2013.plist
luaotfload-tool --diagnose=files
,权限给予
/usr/texbin/luaotfload-tool:1257: unfinished string near '"Fetching comparison between %s and %s, z'
我使用 beta-0.76:
这是LuaTeX
,版本beta-0.76.0-2013061817
(TeX Live 2013)(rev 4627)
但令我惊讶的是,luatex --version
终端给出了这是LuaTeX
,版本beta-0.70.2-2012122916
(TeX Live 2012 / MacPorts 2012_5)
我更改了路径,因此luaotfload-tool --update
在/usr/texbin
配置中调用了texlive2013
- 这样就可以重新创建数据库。现在我遇到了TeX capacity exceeded
,但我认为这是另一个问题。
我猜,我luaotfload-tool
从中找到了一些配置texlive2012
,更改 PATH 后,可以LuaLaTeX
从命令行更新的数据库。
答案2
在 OS X 上,文件luaotfload
被写入~/Library/texlive/2013/texmf-var/luatex-cache/generic
因此,当我遇到这个问题时,我
% cd ~/Library/texlive/2013/texmf-var/luatex-cache/generic
% rm -r fonts names
% luaotfload-tool --update --force -vv
luaotfload | util : Setting log level
luaotfload | util : Task completed successfully
luaotfload | db : Updating the font names database forcefully
luaotfload | db : Blacklisting "7" files and directories
luaotfload | db : Whitelisting "0" files
luaotfload | db : Scanning TEXMF fonts...
luaotfload | db : Scanning directory /usr/local/texlive/2013/texmf-dist/fonts/opentype
luaotfload | db : Scanning directory /usr/local/texlive/2013/texmf-dist/fonts/opentype/adobe
luaotfload | db : Scanning directory /usr/local/texlive/2013/texmf-dist/fonts/opentype/adobe/sourcecodepro
[…]
luaotfload | db : Scanning directory /usr/local/texlive/2013/texmf-dist/fonts/opentype/theleagueofmoveabletype
luaotfload | db : Scanning directory /usr/local/texlive/2013/texmf-dist/fonts/opentype/theleagueofmoveabletype/raleway
luaotfload | db : Scanning OS fonts...
luaotfload | db : Searching in static system directories...
luaotfload | db : Scanning directory ~/Library/Fonts
luaotfload | db : Scanning directory /Library/Fonts
luaotfload | db : Scanning directory /System/Library/Fonts
luaotfload | db : No such directory: "/Network/Library/Fonts"; skipping.
luaotfload | db : Creating filename map
[…]
luaotfload | db : Font file "Times.dfont" already indexed (1315)
luaotfload | db : > old location: /System/Library/Fonts/Times.dfont
luaotfload | db : > new location: /System/Library/Fonts/Times.dfont
luaotfload | db : Scanned 4202 font files; 1166 new entries.
luaotfload | db : Rebuilt in 537530 ms
luaotfload | db : Fonts in the database: 1320
luaotfload | db : Font index saved
luaotfload | db : Text: ~/Library/texlive/2013/texmf-var/luatex-cache/generic/names/luaotfload-names.lua
luaotfload | db : Byte: ~/Library/texlive/2013/texmf-var/luatex-cache/generic/names/luaotfload-names.luc
luaotfload | util : Task completed successfully
这对我来说很有效。
答案3
在 ArchLinux (TexLive 2013) 上,我通过删除解决了这个问题~/.texlive/texmf-var/luatex-cache/
。之后运行 LuaTeX 会出现以下警告:
luaotfload | db : Font names database not found, generating new one.
luaotfload | db : This can take several minutes; please be patient.
luaotfload | db : Font index saved)
但它在几秒钟内就完成了这一操作(生成数据库)。之前我也遇到过与version mismatch
您报告的相同警告,而且似乎要花很长时间(几分钟后,我最终在完成之前中断了该过程……)。
希望这可以帮助。