Hi Dillon,

First of all, I'm against defining such a complex macro, since that can be very
confusing when you use it. I personal prefer the key-value definition:
\def\DEFINETEST[#1]{%
  \getXXXparameters
    [paraA=defaultValueForParameterA%
    ,paraB=% or just empty
    ,#1]%
  \doSomethingWith[\XXXparameter\paraA]%
  \doSomethingElse...
}
You might want to refer to the following link and other valuable materials on the
wiki for more information:
http://wiki.contextgarden.net/System_Macros/Key_Value_Assignments

If you insist on that, I guess you can define a temporary macro inside your macro.
That's very dirty, but can be a little more efficient? I'm not sure.

I was given to understand that the ConTeXt MKVI now accepts parameters such as
#position#color rather than meaningless #1#2. I GUESS that's lua-based, so maybe
it'll break the TeX limitation.

On 07/05/2015 09:55 AM, 土卜皿 wrote:

hi, all

For testing, I have a definition:

\define[9]\DEFINETEST{#1,#2,#3,#4,#5,#6,#7,#8,#9}

context test can work fine, when I modify the above into:

\define[10]\DEFINETEST{#1,#2,#3,#4,#5,#6,#7,#8,#9,#10}

I got a error:

test.tex: ! Illegal parameter number in definition of \DEFINETEST

From StackExchange, I got a answer:

Since ConTeXt is based on TeX, the maximum number of 9 parameters is inherited

So, in Context mkiv, what should I do for more than 9 parameters?

Thanks!

Best Regards

Dillon



___________________________________________________________________________________
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  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________


-- 
Best regards,
ℤh𝕚chu ℂh𝕖n