On Mon, Sep 30, 2013 at 6:00 PM, luigi scarso
On Mon, Sep 30, 2013 at 5:38 PM, Lars Huttar
wrote: I found \start and \stop referenced in the context reference manual (e.g. section 5.5). While \startXYZ - \stopXYZ pairs are discussed earlier, I can't find any place that \start and \stop (with no suffix) are described. They seem to be used like \bgroup and \egroup. Is that right? They are defined in core-sys.mkiv, but I can't figure out from there what they actually do.
I'll contribute documentation for them if someone can tell me what they mean.
Thanks, Lars
core-sys.mkiv :
\unexpanded\def\start {\dosingleempty\syst_start}
\def\syst_start {\bgroup \iffirstargument \expandafter\syst_start_yes \else \expandafter\syst_start_nop \fi}
\def\syst_start_yes[#1]% {\edef\m_syst_start_stop{#1}% \ifx\m_syst_start_stop\empty \let\syst_stop_indeed\donothing \else\ifcsname\e!start\m_syst_start_stop\endcsname
\expandafter\let\expandafter\syst_stop_indeed\csname\e!stop\m_syst_start_stop\endcsname
\csname\e!start\m_syst_start_stop\expandafter\expandafter\expandafter\endcsname \else \let\syst_stop_indeed\donothing \fi\fi}
\def\syst_start_nop[#1]% {\let\syst_stop_indeed\donothing}
\unexpanded\def\stop {\syst_stop_indeed \egroup}
(it should be \let\donothing\empty)
sorry, hit return too early.
\start <...> \stop without argument is \bgroup % from\def\syst_start \expandafter\syst_start_nop \syst_start_nop is {\let\syst_stop_indeed\donothing} and \stop is hence \syst_stop_indeed \egroup i.e. \donothing \egroup are like \bgroup <...> \egroup It seems that there are no examples of \start[]<..>\stop . -- luigi