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