On 30 Jan 2018, at 15:54, Wolfgang Schuster
wrote: […]
Use the command key which grabs the content of each column as argument (i.e. your commands needs as many arguments as your table has columns):
\defineseparatedlist [seplisttalk] [separator={;}, command=\maketalk]
Thanks Wolfgang! That fixes the issues concerning the entries which are text, but now the filename is not understood by the command \maketalk: here is the modified code: %% begin database-command.tex \usemodule[database] \starttext \startbuffer[pagetalk] \starttabulate[|f{\bi}l|p|][before=]% \NC Speaker \EQ \goto{{\sc \getvariable{talk}{speakername}}}[fig:\getvariable{talk}{speakername}] \NC\NR \NC Title \EQ \getvariable{talk}{title} \NC\NR \stoptabulate \startplacefigure[number=no] \externalfigure[\getvariable{talk}{picture}] \stopplacefigure \page \stopbuffer \setvariable{talk}{set}{\getbuffer[pagetalk]} \define[3]\maketalk{% \setvariables[talk]% [speakername={#1}, title={#2}, picture={#3}, ]} \defineseparatedlist[seplisttalk] [separator={;}, command=\maketalk] \startseplisttalk {Hacker} ; {Up to date hacking} ; {hacker.jpg} Hacker ; Up to date hacking ; hacker.jpg \stopseplisttalk \stoptext %% end database-command.tex