\deleteenvironment --- Re: opak \def
Richard Kralovic
kralovic at gjh.sk
Mon Mar 15 14:57:19 CET 1999
On Mon, 15 Mar 1999, Antonin Strejc wrote:
> >Diky za rady, tady je vysledne reseni:
> >
> >\def\deleteenvironment#1{
> >\expandafter\let\csname #1\endcsname\relax
> >\expandafter\let\csname end#1\endcsname\relax
> >}
> >Pouziti napr.: \deleteenvironment{equation*}
>
> Ve svem puvodnim dotazu jste ale pozadoval neco jineho -- zrusit
> definici makra. Toto reseni "neodstranuje \def", tedy presneji nerika,
> ze prislusne makro prestava byt definovano. Jinak by bylo potreba
> misto \relax prirazovat \undefined.
To je sice pravda, ale ak sa pouzitim konstrukcie \csname .. \endcsname
vyvola nedefinovane makro, TeX ho povazuje za \relax. LaTeX preto testuje,
ci je makro definovane, pomocou
\expandafter\ifx\csname...\endcsname\relax ... \else Warning \fi
Takze riesenie \expandafter\let\csname...\endcsname\relax by malo byt
uplne korektne.
Riso Kralovic
More information about the csTeX
mailing list