![](https://secure.gravatar.com/avatar/6707d79a6a5dc9090b58e333d067593e.jpg?s=120&d=mm&r=g)
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
![](https://secure.gravatar.com/avatar/c5ae4f9aa0d3a9bd5376e92b322c3e50.jpg?s=120&d=mm&r=g)
On Mon, 30 Sep 2013, 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.
(Untested, based on what I remember): \start = \bgroup \stop = \egroup but \start scans the next argument, so there are situations when \start may fail but \bgroup works. \start[whatever] ... \stop = \startwhatever ... \stopwhatever Aditya
![](https://secure.gravatar.com/avatar/6707d79a6a5dc9090b58e333d067593e.jpg?s=120&d=mm&r=g)
On 9/30/2013 11:44 AM, Aditya Mahajan wrote:
On Mon, 30 Sep 2013, 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.
(Untested, based on what I remember):
\start = \bgroup \stop = \egroup
but \start scans the next argument, so there are situations when \start may fail but \bgroup works.
\start[whatever] ... \stop = \startwhatever ... \stopwhatever
Ouch, that sounds like two very different behaviors, depending on whether an argument is present. I think I'll document \start at http://wiki.contextgarden.net/Command/start but take the usage of it out of the ref man's examples, replacing it with { and }, as long as the examples still work. It's not important to any of the examples. Thanks, Aditya and Luigi, for the quick assist. Lars
Aditya ___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________
![](https://secure.gravatar.com/avatar/386a116d129cdc597f2bb6210bbaff7a.jpg?s=120&d=mm&r=g)
On Mon, Sep 30, 2013 at 5:38 PM, Lars Huttar
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) -- luigi
![](https://secure.gravatar.com/avatar/386a116d129cdc597f2bb6210bbaff7a.jpg?s=120&d=mm&r=g)
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
participants (3)
-
Aditya Mahajan
-
Lars Huttar
-
luigi scarso