On Wed, Jul 29, 2020 at 09:37:13PM -0700, Hans Hagen wrote:
One other question about LuaMetaTeX 2.7.1: I noticed that the terminal_input callback is gone. Does this mean that the current behaviour of basically freezing when previously terminal input was requested is hardcoded or is some other callback invoked which can then provide some tokens?
Marcel
first line on console was already gone (only the filename gets pushed into the input because tex forces an input
I think this is a misunderstanding. I wasn't referring to the first line, but to lines after the main input is fully evaluated. E.g. as a ConTeXt example \starttext \def\dosomethinguseful#1{Do something useful with #1} \dosomethinguseful{ Ups, I "forgot" to close this brace \stoptext This used to end up asking for terminal input. Especially since the terminal_input callback was available, it was possible to detect such situations and trigger an error. With the current ConTeXt code, I couldn't find a nice solution for this and when running such documents, the interpreter basically freezes, starts consuming memory and finally gets killed by the out of memory handler. Experients with token.scan_next suggest that instead of asking for input, TeX keeps seeing a special relax-like token. I was hoping that there is some callback which can be used to intercept this and either fail gracefully with an error message or to provide more useful tokens.
anyway, read/write channel zero are for the terminal
That's good to know, thank you. Marcel