![](https://secure.gravatar.com/avatar/4eb07a3c66dc527a51d08d8cb8291553.jpg?s=120&d=mm&r=g)
There's a nice little problem that arises in LaTeX, of wanting to write a bit of code like the following, to define an environment that passes the contents of the environment to a command as an argument: \newcommand{\foo}[1]{...} \newenvironment{fooenv}{% \foo\bgroup }{% \egroup } There's even a nice FAQ entry about this. [1] As it turns out, the amsmath package defines a handy \collect@body command that handles collecting the environment body to pass it to a command. Anyhow, I'm finding myself wanting to do this in ConTeXt, with of course replacing \newenvironment with \definestartstop. Is there by any chance a built-in ConTeXt macro that can do this? Or even things that would make a decent foundation for building such a thing? Thanks much, - Brooks [1] http://www.tex.ac.uk/cgi-bin/texfaq2html?label=cmdasenv