当通过编译文件时pdflatex
(也许其他情况也是如此),命令行的输出显示一系列括号中的增加的数字,例如
[13] (/usr/local/texlive/2016/texmf-dist/tex/latex/microtype/mt-euf.cfg)
[14] [15] [16] [17] [18]
(/usr/local/texlive/2016/texmf-dist/tex/latex/doublestroke/Udsrom.fd) [19]
[20]
这些也出现在.log
文件中。
它们指的是什么?
此外,还会出现空括号,例如
Overfull \hbox (60.0pt too wide) in paragraph at lines 231--231
[] []
[]
它们属于什么?
答案1
每次 TeX 弹出一个页面(写入 DVI/PDF 文件并从内存中删除页面材料)时,它都会通过写入来将这一事实记录在日志文件中
[<page number>]
其中<page number>
是 的当前值\count0
。在 LaTeX 中,\value{page}
与 相同\count0
。
\count0
实际上,从到 的所有计数器\count9
都会被记录,但只有到最后一个非零值的值才会写入日志文件。因此,如果\count0
、\count2
和\count3
的值为 4、0 和 2,且以下计数器为 0,[4.0.2]
则将显示
(方括号)符号也用于显示盒子内容。例如,当发出过满/未满的盒子消息时,会显示有问题的盒子的表示。从我做的一个测试中,我得到了
Underfull \hbox (badness 10000) in paragraph at lines 25--25
|[]\TU/lmr/m/it/10 su-per-cal-
在终端上
Underfull \hbox (badness 10000) in paragraph at lines 25--25
|[]\TU/lmr/m/it/10 su-per-cal-
[]
在日志文件中。
[]
开头的空组表示无法详细显示的项目(通常是盒子或小玩意)。|
代表规则。
尾部[]
只能在日志文件中看到,而不能在终端输出中看到。它代表了框的过满/欠满的详细表示;细节级别由参数\showboxdepth
和控制\showboxbreadth
,LaTeX 将其设置为 -1。如果我们增加它们的值,我们可以在日志文件中看到更多信息:
Underfull \hbox (badness 10000) in paragraph at lines 25--25
|[]\TU/lmr/m/it/10 su-per-cal-
\hbox(8.39996+3.60004)x56.9055, direction TLT
.\rule(8.39996+3.60004)x0.0
.\whatsit3121978=5
.\kern3.0
.\glue 0.0
.\TU/lmr/m/it/10 s
.\TU/lmr/m/it/10 u
.\discretionary (penalty 50)
..< \TU/lmr/m/it/10 -
.\TU/lmr/m/it/10 p
.\kern -0.51
.\TU/lmr/m/it/10 e
.\TU/lmr/m/it/10 r
.\discretionary (penalty 50)
..< \TU/lmr/m/it/10 -
..= \kern -0.51
.\TU/lmr/m/it/10 c
.\kern -0.51
.\TU/lmr/m/it/10 a
.\TU/lmr/m/it/10 l
.\TU/lmr/m/it/10 -
.\discretionary (penalty 50)
.\glue(\rightskip) 0.0
(这里使用了 LuaTeX,但在这方面它与其他引擎没有区别)。
因此,您会看到,[]
在简短的表示中,它代表了 whatsit、kern 和 glue 的组合。