On 2014-06-25 19:04, Hans Hagen wrote:
On 6/25/2014 11:13 PM, Wolfgang Schuster wrote:
Am 25.06.2014 um 21:44 schrieb Hans Hagen
mailto:pragma@wxs.nl>: On 6/25/2014 7:21 PM, Michael Green wrote:
This appears to be the same as the problem Peter Münster found with the letter module
\usemodule[database]
\defineseparatedlist[MyTable] [separator=tab, before=\bTABLE,after=\eTABLE, first=\bTR,last=\eTR, left=\bTD,right=\eTD]
\starttext
The first letter of “Cell” is lost.
\startseparatedlist[MyTable] Cell 1Cell 2 \stopseparatedlist
With an extra return, “Cell” is intact.
\startseparatedlist[MyTable]
Cell 1Cell 2 \stopseparatedlist
\stoptext
in buff-ini.mkiv change this:
\def\buff_start_indeed#1#2#3#4% {\normalexpanded{\buff_pickup{#2}{#3}{#4}{}{\buff_stop{#4}}\plusone}}
probably needs some checking
Adding \obeylines to \grabbufferdatadirect would also work
\unexpanded\def\grabbufferdatadirect % name start stop {\begingroup % (6) + \obeylines \buff_start_indeed\empty}
but I’m interested what’s the purpose of the fifth argument for \buff_start_indeed.
that was wrong; the pickup macro has a fifth argument (\plusone here) but goes unnoticed when you add \obeylines in which case the first 'obeyedline' ended up in #5
(i probably messed up when adding some feature but i would have to need to look at older code to see how/when)
does it make sense?
Hans
Adding \obeylines as Wolfgang indicated did not resolve the issue with my test case (shortened below), while removing #5 as Hans suggested does resolve it. % macros=mkvi \starttexdefinition unexpanded startTest \begingroup \dostartTest \stoptexdefinition \starttexdefinition dostartTest \grabbufferdata[Test][startTest][stopTest] \stoptexdefinition \starttexdefinition stopTest \getbufferdata[Test] \endgroup \stoptexdefinition \define\TestText {If you can read this the first token was not swallowed.} \starttext If another line does not follow this, there is a failure. \startTest\TestText\stopTest \stoptext As I wrote before, I do not have a way to more extensively test the other effects of the change. -- Rik Kabel