marking in two pass data
Hi all, the example is kind of silly but shows my problem: I use Lua to manipulate data from xml files, and I want to typeset it as natural tables. Is it possible to set a marking within such tables so that it works in page headers? I hit a similar problem some time ago, but I'm not sure I found any good solution for it... Thanks Thomas Example: \starttext \setupTABLE [split=repeat] \definemarking [Test] \setupheadertexts [{\getmarking[Test][top]--\getmarking[Test][bottom]}] \startluacode samples = { { "A", "aesop-de.tex" }, { "B", "bryson.tex" }, { "C", "carey.tex" }, { "D", "cervantes-es.tex" }, { "E", "darwin.tex" }, { "F", "davis.tex" }, { "G", "dawkins.tex" }, { "H", "douglas.tex" }, { "I", "hawking.tex" }, } context.bTABLE() for _, k in ipairs(samples) do context.marking( { "Test" }, k[1]) context.bTR() context.bTD() context(k[1]) context.eTD() context.bTD() context.input( k[2] ) context.eTD() context.eTR() end context.eTABLE() \stopluacode \stoptext
On 8/7/2016 11:15 AM, Thomas A. Schmitz wrote:
\starttext
\setupTABLE [split=repeat]
\definemarking [Test]
\setupheadertexts [{\getmarking[Test][top]--\getmarking[Test][bottom]}]
\startluacode
samples = { { "A", "aesop-de.tex" }, { "B", "bryson.tex" }, { "C", "carey.tex" }, { "D", "cervantes-es.tex" }, { "E", "darwin.tex" }, { "F", "davis.tex" }, { "G", "dawkins.tex" }, { "H", "douglas.tex" }, { "I", "hawking.tex" }, }
context.bTABLE() for _, k in ipairs(samples) do context.marking( { "Test" }, k[1]) context.bTR() context.bTD() context(k[1]) context.eTD() context.bTD() context.input( k[2] ) context.eTD() context.eTR() end context.eTABLE()
\stopluacode
\stoptext
I bet you can figure out why this works: context.bTD() context.marking( { "Test" }, k[2]) context(k[1]) context.eTD() ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
On 08/08/2016 01:56 PM, Hans Hagen wrote:
I bet you can figure out why this works:
context.bTD() context.marking( { "Test" }, k[2]) context(k[1]) context.eTD()
Uugh, I thought I was clever in leaving it out of the cell, but of course, now I see my error! (In my defense, I made a stupid typo in my real-life file that made it harder to spot this). Thanks Hans, everything is fine now! Thomas
participants (2)
-
Hans Hagen
-
Thomas A. Schmitz