On 2/22/2017 6:21 PM, Alan Bowen wrote:
Here is the file that I have been working with:
\installlanguage[packed][en] \setuplanguage[packed][spacing=packed] \startsetups[tightspace] \spaceskip 0.5\interwordspace plus .5\interwordstretch minus \interwordshrink \stopsetups
\def\dostartbibitem[#1]{\startBibItem[title={#1},reference={#1}]} \def\startbibitem{\dosingleempty\dostartbibitem} \def\stopbibitem{\stopBibItem}
\definedescription[BibItem][ width=broad, margin=1.5pc, indenting={no}, indentnext=no, alternative=hanging, hang=1, headcommand=\gobbleoneargument, align=right, before={\directsetup{tightspace}\bgroup\language[packed]}, after={\egroup}, ]
\definereferenceformat [cite] [type=title,left={},right={}] \definereferenceformat [bibpage] [type=page]
\starttext
\startbibitem[A, B, and C]\stopbibitem % TEST by commenting these %\startbibitem[A{,} B{,} and C]\stopbibitem% lines out
\startbibitem[ABC]\stopbibitem \startbibitem[A]\stopbibitem \startbibitem[B]\stopbibitem \startbibitem[C]\stopbibitem
* \cite[A, B, and C] \qquad{\red output should be: A{,} B{,} and C}
**\cite[ABC] \qquad{\red output should be: ABC}
***\cite[A], \cite[B], \cite[C] \qquad{\red output should be: A, B, C}
****\cite[A]\cite[B]\cite[C] \qquad{\red output should be: ABC}
\stoptext
references can be a comma separated list, so A, B, and C is actually three tags: "A" "B" "and C" so, you run into parsing problems, so how to deal with: [A, B, and C] maybe: [{A, B, and C}] alas, in comma separated list the first level of {} is removed but we can cheat: [{{A, B, and C}}] works with \cite [{{A, B, and C}}] Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------