[tex-k] TeX: speceskip glue mark is not printed in log
Karl Berry
karl at freefriends.org
Wed Jun 29 23:41:38 CEST 2022
Hi Igor,
\spaceskip=1pt
\setbox0=\hbox{I turn}\showbox0
...
Spacefactor does not change the glue (due to zero
stretchability and shrinkability), so output must be:
.\glue(\spaceskip) 1.0
Thanks again for the report. After some discussion, our feeling is that
this is not a bug to be passed on. Mainly because Knuth never
explicitly says (as far as we can see), either in The TeXbook or
tex.web, exactly when the special glues such as \spaceskip are
marked. So the only guide is the code, and it seems intentional that the
marking is avoided when spacefactor != 1000, regardless of whether the
spacefactor affects the glue setting.
There is certainly a reasonable argument that it would be nicer if, as
you say, \spaceskip was marked if it was the only source for the glue
item. But the current behavior doesn't seem wrong to us, since there is
no statement being contradicted. And the behavior is plausible -- only
mark \spaceskip if the glue was not modified, even potentially, by the
space factor.
Looking at the code (tex.web sections 1041--1044), it seems it would be
rather painful to change it, since right now the code applies the space
factor without needing to know the context, that is, if the stretch and
shrink are actually going to be used. Putting extra stuff into this
"almost inner loop" code merely for the sake of different logging is not
something Knuth would care to do at this point. --best, karl.
More information about the tex-k
mailing list.