\deleteenvironment --- Re: opak \def

Michal Kubecek kubecek at karlin.mff.cuni.cz
Mon Mar 15 15:16:43 CET 1999


> > 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.

Korektni rozhodne neni. Bude totiz fungovat jen do te doby, dokud
autori LaTeXu a vsech moznych dodatecnych baliku budou testovat
definovanost makra timto zpusobem. Pokud nemate v oficialni
dokumentaci vyslovne napsano, ze tomu tak opravdu vzdy bude, neni
prilis rozumne na to spolehat.

                                                   Michal Kubecek



More information about the csTeX mailing list