Ambiente que consome (ignora) o texto dentro dele

Ambiente que consome (ignora) o texto dentro dele

Quero replicar o ambiente commentdo commentpacote:

\begin{comment}
Hidden stuff.
\end{comment}

que não imprime nada, em vez de usar %para comentar as coisas.

Posso fazer isso com um comando, como \def\comment#1{}, e agora quero transformá-lo em um ambiente.

A motivação é criar um ambiente que oculte condicionalmente o texto completamente ou faça algo com ele, como mudar de cor:

\@ifundefined{flag}%
{\newenvironment{flagged}{\it\color{red}(}{)}}%
{\newenvironment{flagged}{\comment\bgroup}{\egroup}}

No segundo caso a intenção é fazer com que o argumento texto da macro: \comment\bgroup Hidden stuff\egroup. Isso não funciona porque \bgroup\egroupnão é possível delimitar um argumento de uma macro.

\includepackage{comment}
...
{\newenvironment{flagged}{\begin{comment}}{\end{comment}}}

também não funciona, acho que porque o commentpacote espera uma string literal \end{comment}:

! File ended while scanning use of \next.

Como fazer isso?

Responder1

O commentpacote fornece um mecanismo para fazer isso via \specialcommente \excludecomment.

informação relacionada