我有一个文件,文件名有 71 个字符,没有空格,有几个数字,还有一些特殊的“丹麦”字符。“latexmk”处理了文件,但没有运行“biber”足够多次,或者根本没有运行“biber”;没有按顺序处理 \cite-entry。
xelatex、biber 和 xelatex 能够处理包括每个 \cite-entry 等在内的原始文件。
当我大大缩短文件的名称时,我就能够在 latexmk 中处理该文件。
latexmk 处理文件的长度有限制吗?
答案1
作为約翰·柯林斯在评论中指出,这里的问题是latexmk
必须解析.log
文件才能确定 LaTeX 是否.bbl
找到了该文件。LaTeX 通常会在输出中换行较长的行,但 XeLaTeX 并不总是在预期的位置换行(pdfLaTeX 在 79 字节处换行,但当存在非 ASCII 字符时 XeLaTeX 不符合此限制),因此无法latexmk
正确解析该行。
John Collins 还提出了一种解决方法:第一次手动调用 Biber。然后.bbl
就会出现,并且latexmk
不必依赖.log
文件解析来知道是否再次调用 Biber。
最近latexmk
更新至版本 4.67(https://tug.org/pipermail/tex-live-commits/2020-January/012017.html) 解决了此问题。现在应该可以使用更长的文件名。