Bruno Le Floch
Bruno Le Floch
The list of possible commands should appear in the pdf documentation, with explanations. The detailed behaviour should be explained, and the code altered to reflect the expected behaviour. Among other...
One would want ``` \unravel{\scantokens{\catcode`X=12 \showX}} ``` to show `the character X` instead of producing an error "`\showX` not defined". A similar comment applies to `\input` instead of `\scantokens`.
Hopefully there will be a point where `unravel` detects all TeX errors. Even before that, it would be useful to have the option to stop at the first error detected...
There are many situations where it would be a life saver to rewind steps. Typically, I use `\unravel` to find what caused a TeX error. It would be nice to...
It would be good to have better error messages in case of the rather common "runaway argument" error. However, this is very tricky to do in general since `\unravel` must...
The error recovery for non-`\long` macros which have simple arguments (`#1#2#3...`) when they receive `\par` is different in `unravel` than in TeX. ``` \RequirePackage{unravel} \def\test#1{} \unravel{\test\par} ``` internally finds the...
Currently `\scantokens` relies on the `\tl_set_rescan:Nnn` function, but just like `\use:x` this command uses internal storage, so it is quite dangerous if the user's code itself contains the same function...
LuaLaTeX uses more and more lua functions, so for instance ``` \documentclass{article} \usepackage{unravel} \begin{document} \unravel{a} \end{document} ``` ends up running such a luacall and blowing up. It it easy to...
The unravel code has `\@@_prepare_mag:` in every place that original TeX has it. But pdfTeX (at least) adds several more places. Most of them are ultimately only called within `\shipout`,...
Currently the notion of "step" in `unravel` is a bit haphazard. It would be good to clarify what a step can be. This would probably force the code to be...