好的,我已經查看過存檔。這個錯誤屬於「發生了一些非常奇怪的事情」類別
錯誤是因為 TeX 試圖將文字 متّی\mt1 متّی 轉換為頁眉行(\h)的一部分。
\h 是一個特殊行,由於其在 PTXprint 中的使用方式,它必須單獨佔一行,後面不能跟隨任何其他 USFM 標記。最終的 USFM 中有一行:
\h متّی\mt1 متّی
這就是原因。
您的輸入 SFM 檔案似乎不包含這一行,但當檔案到達 TeX 時它已經存在了。所以我猜測是 changes 檔案的問題,果然,關閉 changes 檔案後問題就解決了。
深入挖掘後,我在 changes.txt 中找到了這一行
"(\\toc3 (.+?)\s+)" > "\1\\h \2"
這一行將 \h 放在與其後內容相同的行上。
以下是一個不會導致崩潰的版本:
"(\\toc3 (.+?)\s+)" > "\1\\h \2\n"
結尾的 \n 用於添加新行。
OK, I’ve had a look at the archive. The error comes into the class of “Something very odd is happening”
The error was because TeX was trying to turn the text متّی\mt1 متّی into part of the running header line (\h).
\h is a special line which, because of how it is used in PTXprint, must occur on a line on its own, with no other USFM markers following it. The final USFM has a line:
\h متّی\mt1 متّی
Which is the cause.
Your input SFM file does not seem to contain this line, but it’s there’s one by the time the file gets to TeX. So I guessed that it is the changes file, and sure enough, turning off the changes file fixes the problem.
Digging deeper, I find this line, in changes.txt
"(\\toc3 (.+?)\s+)" > "\1\\h \2"
That line puts \h on the same line with whatever follows it.
The following is a version which will not cause crashes:
"(\\toc3 (.+?)\s+)" > "\1\\h \2\n"
The \n at the end, adding a new line.
機器翻譯自 English