Joseph Wright wrote: > Okay, I'd suggest all in \toks_ (remembering that we'll need to pick up > the primitives not the LaTeX2e versions for l3in2e). I guess we will > need to do the same as LaTeX2e for the initex version of expl3, and > remove direct access to the primitives in user space? Thinking again, I'm not sure quite what is best. Possibilities include having a dedicated "every" name-space: \everyeof \l_every_eof_toks \everypar \l_every_par_toks \everymath \l_every_math_toks Splitting into different modules: \everyeof \l_ior_eof_toks \everypar \l_<some-module>_par_toks \everymath \l_<some-module>_math_toks (good modules for these are not obvious) Putting everything in the toks module: \everyeof \l_toks_eof_toks \everypar \l_toks_par_toks \everymath \l_toks_math_toks Over all, I think I prefer the first option, as these do all go together. (If we go for _every_, do we have a very short module "l3every" for this? If not, where do these things go?) There is also the question of whether to provide a wrapper for assignment to these, something like: \cs_new:Npn { \ior_eof_set:n } #1 { \toks_set:Nn \l_ior_eof_toks {#1} } or \cs_new:Npn { \every_eof_set:n } #1 { \toks_set:Nn \l_every_eof_toks {#1} } I'd probably argue that this is unnecessary. The \every... toks are all quite low-level, and I think that it's perfectly logical if they are given _toks names that they are then treated like any other toks. -- Joseph Wright