[NTG-context] start/stop executed conditionally on mode ?
Wolfgang Schuster
wolfgang.schuster.lists at gmail.com
Mon Jun 8 22:22:28 CEST 2020
Fabrice L schrieb am 08.06.2020 um 21:53:
> Thanks to Aditya, I have succeeded, but it was not trivial for me. So,
> in case somebody someday would need a detailed solution, here is a
> minimal example, and an explanation.
>
> A buffer « Questions » is defined. If in « ClassRoom » mode, a
> start/stop « Questions » is also defined. So when ConTeXt encounters the
> \startQuestions / \stopQuestions, if the « ClassRoom » mode is enabled,
> the buffer is processed (with some format if needed - framed here for
> the example), and if the mode « ClassRoom » is disabled, then nothing is
> process. You can add as many \startQuestions / \stopQuestions you wish.
Let me give a better explanation.
The line
\definebuffer [Questions]
serves two purposes:
1. It create a Questions environment (\startQuestions ...
\stopQuestions)
2. I gobbles the content of the environment.
When you enable the ClassRoom mode ConTeXt encounters this line
\definestartstop [Questions]
which redefines the Questions environment which uses now the
startstop-mechanism but the previously created environment buffer based
environment no longer exists.
The reason for this redefinition is to keep the content of the
environment in the document although you could have used other methods
to achieve the same as \definestartstop.
Wolfgang
More information about the ntg-context
mailing list