Formatting problem in WEAVE
Andreas Scherer
andreas_tex at freenet.de
Fri May 1 10:49:11 CEST 2020
Hello, Igor,
> On p.232 of MetaFont source the code
Better to refer to this as "section 566"; as Karl said, it appears on
page 266 of "Volume D" of "Computers & Typesetting".
> The question is how to achieve that @} appears on the same line as @{.
I don't know how DEK did it in print; most likely, TWILL and twimac.tex
(if there is such a thing) works slightly different than WEAVE and
webmac.tex.
I played with the code of section 566 and found:
(a) '@+' adds '\ ' in the woven TeX code, which appears to be defined as
'\SP' (space in string). In fact, if you look at the _printed_ version,
there's a significant amount of whitespace between ';' and '@}' (in
sections 566, 567, and 568).
(b) Independent of the presence of '@+' in the WEB code, WEAVE writes
'\2\6' after the code, but before '$\T$', which actually prints as '@}'
to "terminate controlled comment".
(c) The culprit seems to be '\6', which is a "forced break".
So, either TWILL produced different TeX output than WEAVE (probably
with/out the "forced break"), or there's a possible bug in WEAVE?!
According to webman.tex, '@+' should, in fact, "cancel a line break that
might otherwise be inserted by WEAVE".
(d) '@+' does work as expected for code like section 9 of mf.web.
There, the '\6' between the inner '@}' and the end-like 'debug' appears
only without '@+'.
Cheers,
Andreas
More information about the texhax
mailing list.