[tex-live] [lltx] Location of recorder file

Paul Isambert zappathustra at free.fr
Fri May 13 10:25:16 CEST 2011


Le 13/05/2011 09:15, Manuel Pégourié-Gonnard a écrit :
> Le 13/05/2011 02:08, Philipp Stephani a écrit :
>> or at
>> least rewritten so that \jobname is never expanded at every job:
>>
> I don't see any way to achieve that at the moment.

The following observation might help: \everyjob is put into the stream 
before whatever comes next. So it can know what's coming, either \input 
or anything else. If it is \input, then it just has to use one 
\expandafter before doing what it is supposed to do, and \jobname is 
correctly fixed.

For instance, try "lualatex \input test" with the following in the 
format (e.g. replaced lualatexquotejobname with that code):

\makeatletter
\long\def\getalook{%
   \immediate\write0{\jobname}%
   }
\everyjob{%
   \let\input\@@input
   \expandafter\getalook
   }
\makeatother

Then "test" is printed to the terminal, because the expansion of 
\jobname happens after \input. Remove \expandafter and you'll get 
"texput" instead. Here I've restored the primitive meaning of \input to 
make life simpler, but that'd work with LaTeX's \input and a subtler code.

Best,
Paul


More information about the tex-live mailing list