On 28 févr. 2010, at 10:17, Wolfgang Schuster wrote:
\def\myMacro {\dotriplegroupempty\domyMacro}
\def\domyMacro#1#2#3% {\doifelsenothing{#3} {Name: #1\crlf Email: #2\crlf} {Name: #1\crlf Address: #2 \crlf Email: #3\crlf}% \thinrule\blank[small]}
Wolfgang
Many thanks Wolfgang! Your solution solves my question. Now for a complete understanding of the solution (and before putting your solution on the wiki), here is another question. After reading your solution, I searched in the source files and saw that in the file syst-gen.mkii the command \dosinglegroupempty, until \doquintuplegroupempty are defined. For instance \def\dotriplegroupempty#1% {\def\dodogetargument##1% {\def\dodogetargument####1% {\def\dodogetargument% {\dontpermitspacesbetweengroups #1{##1}{####1}}% \dogetgroupargument\thirdargumenttrue\thirdargumentfalse}% \dogetgroupargument\secondargumenttrue\secondargumentfalse}% \dogetgroupargument\firstargumenttrue\firstargumentfalse} Can one use other constructions like these, for example can one define \dosepttuplegroupempty in order to have macros with 7 arguments, of which 5 are always present, while the sixth and seventh may be absent in some occasions? Thanks again: OK