
Gostaria de copiar o conteúdo de um ambiente para poder usá-lo em outro lugar. Meu objetivo principal é imprimi-lo dentro de uma nota de dica.
Minha ideia era usar o environ
pacote:
\NewEnviron{foo}
{
\xdef\bidule{\BODY}
%more stuff
}
Mas quando uso, \bidule
recebo um erro:
Undefined control sequence ....
leading text: \end{foo}
Undefined control sequence \endgroup.
leading text: \end{foo}
Missing { inserted.
leading text: \bidule
main.tex:19: File ended while scanning text of \errhelp.
Se meu entendimento estiver correto, não posso usar \def
porque \BODY
não estará definido quando irei usar \foo
. Existe uma maneira de atingir meu objetivo?
Responder1
Você não quer fazer uma expansão completa \BODY
, mas apenas um nível:
\expandafter\gdef\expandafter\bidule\expandafter{\BODY}
ou
\xdef\bidule{\unexpanded\expandafter{\BODY}}