The following example works with older versions of ConTeXt, such as
the version from 20150325 in my repository. It fails with TL15 and
later, including the current standalone beta.
% macros=mkvi
\setwidthof {99}\to\IDWidth\relax
\def\STWidth{\dimexpr\textwidth-\IDWidth+1cm}
\definelist[OList]
\setuplist
[OList][criterium=all,alternative=c,pagecommand=\gobbleoneargument]
\starttexdefinition OLister #ID#String
{\writetolist[OList]{}{\hbox{\simplealignedbox{\IDWidth}{left}{#ID\quad}
{\doboundtext{#String}{\STWidth}{…}}}}}
\stoptexdefinition
\starttext
\OLister1{Some list testing text xxx xxx xxx xxx xxx xxx
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx}
\OLister2{Yet another list testing text xxx xxx xxx xxx
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx}
\OLister3{A list testing text xxx xxx xxx xxx xxx xxx xxx
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx}
\OLister4{Different list testing text xxx xxx xxx xxx xxx
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx}
\subject{List half width}
\startcolumns[n=2]
\placelist[OList]
\stopcolumns
\stoptext
With the 20150325 ConTeXt, there are .tuc file entries like:
["second"]="\\hbox {\\simplealignedbox {\\IDWidth
}{left}{2\\quad }{\\doboundtext {Yet another list testing text
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx
xxx xxx}{\\STWidth }{…}}}",
but with more recent versions, the corresponding entry is:
["second"]="\\hbox {\\simplealignedbox
{12.6pt}{left}{2\\quad }{\\hbox {\\setbox \\scratchbox \\hbox
{Yet another list testing text xxx xxx xxx xxx xxx xxx xxx xxx
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx}\\scratchdimen \\dimexpr
\\textwidth -12.6pt+1cm\\relax \\box \\scratchbox }}}",
--
Rik