** 提示符与 * 提示符有何不同?

** 提示符与 * 提示符有何不同?

根据电子书p. 23,仅当第一个字符是或非时**,提示才与提示不同。*&\

但是,如果我们在和提示中发出以下命令(注意第一个\),输出会有所不同:***

\setbox0=\hbox{a} \showbox0

为什么输出不同?这在哪里记录?还有其他情况下的处理**与不同吗*

答案1

>>> touch ilif.tex # we have a suitable file to input
>>> tex ilif # a file name has been given
This is TeX, Version 3.14159265 (TeX Live 2020) (preloaded format=tex)
(./ilif.tex)
*\setbox0=\hbox{a} \showbox0
! OK (see the transcript file).
<*> \setbox0=\hbox{a} \showbox0

? x
No pages of output.
Transcript written on ilif.log.
>>> tex # no file name
This is TeX, Version 3.14159265 (TeX Live 2020) (preloaded format=tex)
**\setbox0=\hbox{a} \showbox0
> \box0=
\hbox(4.30554+0.0)x5.00002
.\tenrm a

! OK.
<*> \setbox0=\hbox{a} \showbox0

? x
No pages of output.

在第二种情况下,.log还没有打开文件,因为 TeX 仍在等待文件名以设置\jobname。如您所见,在第二种情况下没有注释Transcript written on。由于没有其他输出流打开,TeX 将使用终端打印诊断信息。

如果你按照 Donald Arsenau 的提示执行\setbox0=\hbox{\jobname} \showbox0, 的存在\jobname将迫使 TeX 分配默认的\jobname,即texput。在这种情况下,.log文件可以打开,终端上的输出与 的情况相同ilif.tex

相关内容