Mikael P. Sundqvist mailto:mickep@gmail.com 6. November 2016 um 12:51 Dear list, and in particular Hans,
I asked the same question on stackexchange before today (http://tex.stackexchange.com/q/337738/52406), and got the answer that what I want to do might not be possible.
In my large document I have exercises (typeset with \startexercise \stopexercise, defined as an enumeration). Is it possible to use modes (or any other trick) to be able to compile the same file and get only the exercises. For example,
context file.tex
should give the full document, while
context --mode=exercises file.tex
should give only all the exercises (or just everything "in one mode")? You can put each exercise in a block and ask Hans to add a \saveblocks commands which writes the content of all exercise blocks to a external file (like \savebuffer lets you save the content of a buffer in a external file).
\defineblock[exercise] \keepblocks [exercise] \defineenumeration[exercise][text=Exercise] %\doifmode{exercises}{\saveblocks[exercise][exercises.tex]} \starttext \beginexercise \startexercise This is the first exercise. \stopexercise \endexercise \beginexercise \startexercise This is the second exercise. \stopexercise \endexercise \stoptext The content of this saved file can then be read by another file to get a document which contains only the exercises. \defineenumeration[exercise][text=Exercise] \starttext \doiffileelse{exercise} {\input{exercises}} {{\tttf Exercise file doesn’t exist.}} \stoptext Wolfgang