# How to delete/undefine macros in Context?

How can one delete or undefine macros in Context? Is there a difference if i've used \def or \define to create a macro?

-

Why do you want to do 'undefine' a macro? Depending on what you want, try:

\let\macro\undefined


or

\let\macro\donothing


It does not matter whether you used \def or \define

-
Note that the first is canonical Tex from Knuth (except that he uses the equals sign: \let\macro=\undefined) and is the preferred way to do it. – Charles Stewart Mar 1 '11 at 10:32
The second (\donothing is just a more descriptive synonym of \relax) is better if you do not want code that uses \macro to fail. I am guessing that the OP wants to ignore some ConTeXt environments, \startsomething ... \stopsomething. In that case, it is better to set them to \donothing rather than \undefined. – Aditya Mar 1 '11 at 15:19