
錯誤報告
也可以看看馬克斯·切爾諾夫的評論。感謝馬克斯對第一個問題的指導以及對第二和第三個問題的提示。
- https://github.com/latex3/luaotfload/issues/277
- https://github.com/latex3/luaotfload/issues/281
- https://github.com/latex3/luaotfload/issues/282
版本
Vanilla(即上游)TeX Live 2024 不是最新的。
$ luaotfload-tool --version
luaotfload-tool:
Luaotfload font management and diagnostic utility.
License: GNU GPL v2.0.
Report problems to <https://github.com/latex3/luaotfload/issues>
luaotfload-tool version: "3.28"
Revision: nil
Lua interpreter: stock; version "Lua 5.3"
Luatex version: 1.18
Platform: type=unix name=linux
+ machine: x86_64
+ nodename: MyComputer
+ release: 6.8.2-arch2-1
+ sysname: Linux
+ version: #1 SMP PREEMPT_DYNAMIC Thu, 28 Mar 2024 17:06:35 +0000
Index: version=6 created="2024-03-26 19:18:36" modified="2024-04-05 01:10:24"
和
$ tlmgr info luaotfload
package: luaotfload
category: Package
shortdesc: OpenType 'loader' for Plain TeX and LaTeX
longdesc: The package adopts the TrueType/OpenType Font loader code provided in ConTeXt, and adapts it to use in Plain TeX and LaTeX. It works under LuaLaTeX only.
installed: Yes
revision: 70232
sizes: src: 25k, doc: 1105k, run: 7665k, bin: 5k
relocatable: No
cat-version: 3.28
cat-license: gpl2
cat-topics: font-use luatex
cat-contact-support: https://github.com/latex3/luaotfload/issues
cat-contact-repository: https://github.com/latex3/luaotfload
collection: collection-luatex
問題
我不太使用 LuaTeX,但據我所知,該引擎在我的系統上尋找和使用字體沒有任何問題。
- 尋找
luaotfload-tool
但是,如果我嘗試在命令列中使用,那就是另一回事了。它可以毫無問題地產生字體清單、報告其版本或轉發其幫助訊息,但嘗試搜尋資料庫失敗。
$ luaotfload-tool --find "Noto Sans"
...4/texmf-dist/tex/luatex/luaotfload/luaotfload-arabic.lua:19: attempt to index a nil value (global 'node')
--diagnose=文件
為了診斷這個問題,我嘗試了幫助訊息中列出的第一個「檢查」選項。
$ luaotfload-tool --diagnose=files
luaotfload | diagnose : ================ verify files =================
luaotfload | diagnose : Luaotfload revision 73dac18445938c6c54118045944817c4e8c59a1c.
luaotfload | diagnose : Committed by Marcel Fabian Krüger <[email protected]>.
luaotfload | diagnose : Timestamp 2024-02-28 06:18:10 +0100.
luaotfload | diagnose : Testing 88 files for integrity.
<successful lines omitted>
luaotfload | diagnose : FAILED: file mktests missing.
luaotfload | diagnose : FAILED: file mkstatus missing.
luaotfload | diagnose : FAILED: file mkcharacters missing.
luaotfload | diagnose : FAILED: file mkglyphlist missing.
luaotfload | diagnose : FAILED: file mkimport missing.
<successful lines omitted>
luaotfload | diagnose : ===============================================
WARNING
===============================================
The diagnostic detected 5 errors.
This version of luaotfload may have been
tampered with. Modified versions of the
luaotfload source are unsupported. Read the log
carefully and get a clean version from CTAN or
github:
× http://www.ctan.org/pkg/luaotfload
× https://github.com/latex3/luaotfload/releases
If you are uncertain as to how to proceed, then
ask on the lualatex mailing list:
http://www.tug.org/mailman/listinfo/lualatex-dev
===============================================
老實說,這個消息似乎有點危言聳聽。雖然它是可能的有人篡改了我的副本luaotfload-tool
,這似乎不太可能。 (如果這是企圖做一些邪惡的事情,那似乎是一種非常無能的行為。)
剩下的「支票」呢?
environment
,index
並且repository
都告訴我我may sleep well
。repository
儘管如此,報告無法存取儲存庫,但這是預期的,因為我正在使用 TeX Live 的套件。
--診斷=權限
但permissions
再次報告麻煩:
luaotfload | diagnose : =============== file permissions ==============
luaotfload | diagnose : Checking permissions of /home/username/.texlive2024/texmf-var/luatex-cache/generic/.
luaotfload | diagnose : Owner: 1000, group 1000, permissions rwxr-xr-x.
luaotfload | diagnose : Readable: ok.
luaotfload | diagnose : Writable: ok.
luaotfload | diagnose : Checking permissions of /home/username/.texlive2024/texmf-var/luatex-cache/generic/names.
luaotfload | diagnose : Owner: 1000, group 1000, permissions rwxr-xr-x.
luaotfload | diagnose : Readable: ok.
luaotfload | diagnose : Writable: ok.
luaotfload | diagnose : Checking permissions of /home/username/.texlive2024/texmf-var/luatex-cache/generic/names/luaotfload-names.lua.gz.
luaotfload | diagnose : Owner: 1000, group 1000, permissions rw-r--r--.
luaotfload | diagnose : Readable: ok.
luaotfload | diagnose : Writable: ok.
luaotfload | diagnose : Checking permissions of /home/username/.texlive2024/texmf-var/luatex-cache/generic/names/luaotfload-names.luc.
attr /home/username/.texlive2024/texmf-var/luatex-cache/generic/names/luaotfload-names.luc nil
由於該文件不存在,因此失敗。luaotfload-names.luc
存在,但僅以壓縮格式為luaotfload-names.luc.gz
.這在使用 LuaTeX 時顯然沒問題,但在luaotfload-tool
.
概括
所以我顯然有兩個問題,而不是一個:
luaotfload-tool
期望找到 5 個不存在的腳本,這些腳本不存在於 TeX Live 套件(我的副本)中。luaotfload-tool
期望找到未壓縮格式的名稱資料庫,但(至少預設)該資料庫僅以壓縮格式建立。
這些是軟體錯誤、打包錯誤、有意的修改還是只是使用者的愚蠢行為?
筆記:我沒有提供 MWE 正是因為它將是 MWE 而不是 MNWE --- 我沒有看到編譯文檔時出現任何問題。