Aditya Mahajan wrote:

\def\defineSOMETHING%
  {\dodoubleargument\dodefineSOMETHING}

\def\dodefineSOMETHING[#1][#2]%
 {\setvalue{#1}{\dododefineSOMETHING[#2]}

some do, but sometimes redefinition is quite legal; it happens that 'note' and 'symbol' are pretty core

the convention (as mentioned) is more or less to use UpperCase names for your own commands and UPPERCASE for logo's and abbreviations (but these can have an optional namespace)

kind of tricky are colors and fonts as they have no namespace so i often end up with ThisColor or ThatFont

I meant with commands like \defineSOMETHING above. For example, I once did \definecolor[page][s=0.9] instead of what I normally do: \definecolor[pagecolor][s=0.9]. Took a while to figure out what was going wrong. Some of Xan's error were due to similar things, \defineSOMETHING[note], \defineSOMETHING[symbol], etc. If all these commands issued a warning that you are redefining existing macro, debugging will be much easier. And if you know what you are doing, we could have

\redefinecolor[page][s=0.9]

that does not issue a warning. Or the easier to implemnet:

\setupcolors[check=error|warn|ignore]

maybe later, as it clutters the code; maybe after the mkii->mkiv cleanup

Hans

-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to