Am 07.01.2011 um 10:08 schrieb Martin Schröder:
> 2011/1/6 Philipp Stephani <[email protected]>:
>> Sadly, the documentation for the token library is quite incomplete and
>> sometimes incorrect, but finally I got it to work:
>
> Patches are welcome. :-)
- token.get_next() removes the next token, which is not documented
- there is no function to peek ahead without removing the next token
- the meaning of the entries of the token tables is undocumented
- the documented values for the "mode" key in the semantic nest level tables
are wrong:
\def\printmode#1{%
\directlua{%
tex.sprint(tostring(tex.nest[tex.nest.ptr].mode) .. [[ #1]])
}%
}
\printmode{= 1 = vertical} % print 1, correct
\vbox{
\printmode{= -1 = internal vertical} % prints -1, correct
}
a \printmode{= 127 = horizontal} % prints 118
\hbox{
\printmode{= -127 = restricted horizontal} % prints -118
}
$$
\printmode{= 253 = display math} % prints 235
$$
$
\printmode{= -253 = inline math} % prints -235
$
\bye
Please use symbolic constants instead of magic numbers for such things. TeX has
already too many magic numbers, and this unfortunate tradition should not
continue.