On Fri, 19 Nov 2010, Hans Hagen wrote:
On 19-11-2010 6:35, Wolfgang Schuster wrote:
Am 19.11.2010 um 02:05 schrieb Aditya Mahajan:
I am not sure how this is supposed to work. Consider this example:
[...]
There is a bug in the code for the \define... commands, you need this definition for \doinstalldefinehandler:
\unexpanded\def\doinstalldefinehandler#1#2#3#4#5#6#7% {\unexpanded\def#2{\dodoubleempty#5}% \newtoks#6% \newtoks#7% \def#5[##1][##2]% {\edef#4{##1}% \the#6% predefine \ifsecondargument \doifassignmentelse{##2} {\getparameters[#1#4][\s!parent=#3,##2]} {\getparameters[#1#4][\s!parent=#1##2]}% \fi \the#7}}
To have three arguments for the \define... commands like \defineenumeration change the above command to:
\unprotected\unexpanded\def\doinstalldefinehandler#1#2#3#4#5#6#7% {\unexpanded\def#2{\dotripleempty#5}% \newtoks#6% \newtoks#7% \def#5[##1][##2][##3]% {\edef#4{##1}% \the#6% predefine \ifsecondargument \doifassignmentelse{##2} {\getparameters[#1#4][\s!parent=#3,##2]} {\getparameters[#1#4][\s!parent=#1##2,##3]}% \fi \the#7}}
or maybe:
\unprotected\unexpanded\def\doinstalldefinehandler#1#2#3#4#5#6#7% {\unexpanded\def#2{\dotripleempty#5}% \newtoks#6% \newtoks#7% \def#5[##1][##2][##3]% {\edef#4{##1}% \the#6% predefine \ifthirdargument \getparameters[#1#4][\s!parent=#1##2,##3]% \else\ifsecondargument \getparameters[#1#4][\s!parent=#3,##2] \fi\fi \the#7}}
That one will be slightly faster, I think. Aditya