hint 1 - my note about Table structure (might be inaccurate w/ 2.18): https://gist.github.com/K4zuki/04e1e1af2fcf06db1a6ea640aa8feadd hint 2 - my implementation in a filter (https://github.com/pandocker/pandocker-lua-filters/blob/master/lua/csv2table.lua): 1. prepare a minimum table markdown text as a local variable 2. let pandoc convert the text, then extract Table object ```lua local table_template = [==[ | table | |-------| | cell | Table: caption ]==] local my_table = pandoc.read(table_template, "markdown").blocks[1] ``` 3. clone the object and replace the contents 2022年5月26日木曜日 18:06:06 UTC+9 Bastien Dumont: > The constructors don't take tables as their argument, but discrete values. > I have not found the definition of the constructors in the official > documentation, but you can look into this filter to see how they work: > https://github.com/pandoc/lua-filters/blob/master/list-table/list-table.lua > > Le Thursday 26 May 2022 à 01:53:39AM, msprev a écrit : > > This creates the following structure -- all ok, except the table body, > which is > > empty ('[]'), and I cannot get it to appear. Any suggestions on what I'm > doing > > wrong would be gratefully received. > > > > ``` > > Table > > ( "" , [] , [] ) > > (Caption Nothing []) > > [ ( AlignLeft , ColWidthDefault ) > > , ( AlignDefault , ColWidthDefault ) > > ] > > (TableHead ( "" , [] , [] ) []) > > [] > > (TableFoot ( "" , [] , [] ) []) > > ``` > > On Wednesday, May 25, 2022 at 12:48:06 PM UTC+1 msprev wrote: > > > > I've been struggling to get my head around handling tables with Lua in > > pandoc 2.18. I'm trying to write a minimal working example to create a > > table as I can't seem to find one online. The code below does create a > > table, but with any empty table body and I can't figure out how to get > the > > body to appear. Can anyone help tell me what has gone wrong here? > > > > BTW, I tried to call the pandoc.TableBody() constructor, but that throws > an > > error as it doesn't seem to be defined ("attempt to call a nil value > (field > > 'TableBody')") > > > > ``` > > local caption = {long = {}} > > local colspecs = {{pandoc.AlignLeft, pandoc.ColWidthDefault}, > > {pandoc.AlignDefault, pandoc.ColWidthDefault}} > > local head = pandoc.TableHead() > > local cell1contents = { pandoc.Plain({pandoc.Str("cell1")}) } > > local cell2contents = { pandoc.Plain({pandoc.Str("cell2")}) } > > local cell1 = { alignment=pandoc.AlignDefault, contents=cell1contents, > > col_span=1, row_span=1 } > > local cell2 = { alignment=pandoc.AlignDefault, contents=cell2contents, > > col_span=1, row_span=1 } > > local row1 = { cells={pandoc.Cell(cell1), pandoc.Cell(cell2)} } > > local rows = { pandoc.Row(row1) } > > local bodies = { body=rows, head={}, row_head_columns=0 } > > local foot = pandoc.TableFoot() > > local mytable = pandoc.Table(caption, colspecs, head, bodies, foot) > > table.insert(doc.blocks, mytable) > > ``` > > > > -- > > You received this message because you are subscribed to the Google Groups > > "pandoc-discuss" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email > > to [1]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org > > To view this discussion on the web visit [2] > https://groups.google.com/d/msgid/ > > pandoc-discuss/82a0d0eb-877a-47ff-8632-907322c40648n%40googlegroups.com. > > > > References: > > > > [1] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org > > [2] > https://groups.google.com/d/msgid/pandoc-discuss/82a0d0eb-877a-47ff-8632-907322c40648n%40googlegroups.com?utm_medium=email&utm_source=footer > > -- You received this message because you are subscribed to the Google Groups "pandoc-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/8094d69c-8374-4662-9c5c-c099e14b19b2n%40googlegroups.com.