Hi
all,
I have a list of speakers (and abstracts of their talk) in a
rather long document, and the name of each speaker is written to a
register named speakers.
Then with the command \getparameters[Talk] I
get the name of each speaker and try to write it to the register with
\speakers{\TalkSpeakerName}
You have to add \expanded, i.e. \expanded{\speakers{...}}.
Indeed this does not work to obtain the result I am looking
for: the sorting is indeed under the letter « t », and most importantly
the register gets only the last name in the list instead of getting each
speaker name.
The following is a (not so minimal…) example. Can
anyone help me in this matter?
When you replace \getparameters with \setvariables you can set a command
which is applied each time when you set new values.
\defineregister[speakers]
\setupregister
[speakers]
[style=sansbold,
n=2]
\startbuffer[pagetalk]
\doflushatpar
{\expanded{\speakers{\getvariable{talk}{speakername}}}%
\expanded{\pagereference[talk:\getvariable{talk}{speakername}]}}%
\starttabulate[|f{\bi}l|p|]
\NC Speaker \EQ \getvariable{talk}{speakername} \NC\NR
\NC Title \EQ \getvariable{talk}{title} \NC\NR
\NC Time \EQ \getvariable{talk}{time} \NC\NR
\NC Room \EQ \getvariable{talk}{room} \NC\NR
\HL
\stoptabulate
\stopbuffer
\setvariable{talk}{set}{\getbuffer[pagetalk]}
\showframe[text][text]
\starttext
\setvariables
[talk]
[speakername={Gauss},
title={Remarks on Number Theory},
time={10:30},
room={A}]
The talk about Gauss was on \at{page}[talk:Gauss].
\completeregister[speakers]
\stoptext
Wolfgang
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!
___________________________________________________________________________________