Christoph Reller schrieb am 20.12.2020 um 16:15:
Hi,

The following MNWE uses \dodoubleemptywithset. In ConTeXt MKIV it works as expected, In ConTeXt LMTX an error results.

There is a fix below but even then your example won't work because \typeTEX isn't defined.

\starttext
\unexpanded\def\doMyDefs[#1][#2]{\getparameters[MD#1][#2]}
\def\MyDefs{\dodoubleemptywithset\doMyDefs}
\MyDefs[A,B][key=val,k=v]
\MyDefs[C]
\typeTEX{\MDAkey} is \MDAkey. \typeTEX{\MDBkey} is \MDBkey.
\typeTEX{\MDAk} is \MDAk. \typeTEX{\MDBk} is \MDBk.
\stoptext

Possibly, \dodoubleemptywithset is not used anymore in LMTX, in which case it should be removed. Otherwise this could be a bug. Or maybe I use it wrongly?

It's a bug, the wrong argument is passed as comma list.

\permanent\tolerant\protected\def\dodoubleemptywithset#1#*[#2]#*[#3]%
  {\doifsomething{#2}%
     {\def\syst_helpers_with_set_step##1{#1[##1][#3]}%
-     \processcommalist[#1]\syst_helpers_with_set_step}}
+     \processcommalist[#2]\syst_helpers_with_set_step}}

\permanent\tolerant\protected\def\dotripleemptywithset#1#*[#2]#*[#3]#*[#4]%
  {\doifsomething{#2}%
     {\def\syst_helpers_with_set_step##1{#1[##1][#3][#4]}%
-     \processcommalist[#1]\syst_helpers_with_set_step}}
+     \processcommalist[#2]\syst_helpers_with_set_step}}

Wolfgang

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : [email protected] / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to