%20%D1%82%D0%B5%D0%BA%D1%81%D1%82%20%D0%B2%D0%BD%D1%83%D1%82%D1%80%D0%B8%20%D1%81%D0%B5%D0%B1%D1%8F%20.png)
Я хочу воспроизвести среду comment
из comment
пакета:
\begin{comment}
Hidden stuff.
\end{comment}
который просто ничего не печатает, вместо того чтобы использовать его %
для комментирования.
Я могу сделать это с помощью команды, например \def\comment#1{}
, , и теперь я хочу превратить ее в среду.
Мотивация заключается в том, чтобы создать среду, которая при определенных условиях полностью скрывала бы текст или что-то с ним делала бы, например, меняла цвет:
\@ifundefined{flag}%
{\newenvironment{flagged}{\it\color{red}(}{)}}%
{\newenvironment{flagged}{\comment\bgroup}{\egroup}}
Во втором случае предполагается сделать текстовый аргумент макроса: \comment\bgroup Hidden stuff\egroup
. Это не работает, поскольку \bgroup\egroup
не может разграничить аргумент макроса.
\includepackage{comment}
...
{\newenvironment{flagged}{\begin{comment}}{\end{comment}}}
тоже не работает, я полагаю, потому что comment
пакет ожидает литеральную строку \end{comment}
:
! File ended while scanning use of \next.
Как это сделать?
решение1
Пакет comment
предоставляет механизм, позволяющий сделать это с помощью \specialcomment
и \excludecomment
.