我目前正在全力调试日常使用 TeX 时遇到的一个神秘错误。我同时使用了很多软件包,但似乎无法找到导致错误的原因。
问题归结为,在某个时刻,框\footins
从 void 变为空框,这导致输出例程中的 dblfnote 出错。我曾努力尝试查看它被设置在哪里,但无济于事。
\tracingassigns
由于某些原因,它没有帮助。所以我正在寻找某种方法来跟踪对 的每一个更改\box\footins
,这样我就能知道错误代码在哪里。
我希望我可以提出一个 MWE,但是错误条件对我来说相当神秘,所以我只能要求这种特殊的方法。
答案1
您可以将一些“跟踪”命令从一个地方放到另一个地方。例如:
\newcounter{test}
\newcommand\test{%
\stepcounter{test}%
\ifvoid\footins
\message{^^JStill void at point number \thetest}
\else
\message{^^JNon void at point number \thetest}
\fi
}
\test
\documentclass{article}
\test
\usepackage[T1]{fontenc}
\test
\usepackage[utf8]{inputenc}
\test
\usepackage{kpfonts}
\test
\usepackage{geometry}
\test
\usepackage[french]{babel}
\test
\begin{document}
\test
Hello world!
\end{document}
编译报告和日志文件显示 8 条消息“在点号 ... 处仍然无效”。