* How to wrap code blocks within new tables? @ 2023-07-01 7:58 Sylvain Hubert [not found] ` <dcf7041b-c805-420b-ac60-07e6692e1577n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> 0 siblings, 1 reply; 4+ messages in thread From: Sylvain Hubert @ 2023-07-01 7:58 UTC (permalink / raw) To: pandoc-discuss [-- Attachment #1.1: Type: text/plain, Size: 922 bytes --] Hi all, I'm trying to create bounding boxes for code blocks by wrapping them inside tables. According to the manual, I should probably use some filter like: function CodeBlock(elem) return pandoc.Table(--[[... elem ...]]) end but pandoc.Table takes a giant syntax tree with levels of all sorts of nodes. Neither the manual nor the error message gives a useful guide of actually creating a table. Could anyone provide a minimal example of creating a pandoc.Table in a lua filter? Thanks -- 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/dcf7041b-c805-420b-ac60-07e6692e1577n%40googlegroups.com. [-- Attachment #1.2: Type: text/html, Size: 1381 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <dcf7041b-c805-420b-ac60-07e6692e1577n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>]
* Re: How to wrap code blocks within new tables? [not found] ` <dcf7041b-c805-420b-ac60-07e6692e1577n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> @ 2023-07-01 8:09 ` Sylvain Hubert [not found] ` <4f0c1e08-60a7-4c97-9a7e-c3367ae32483n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> 0 siblings, 1 reply; 4+ messages in thread From: Sylvain Hubert @ 2023-07-01 8:09 UTC (permalink / raw) To: pandoc-discuss [-- Attachment #1.1: Type: text/plain, Size: 1266 bytes --] ok just reverse-engineered it folloing https://github.com/jgm/pandoc/issues/8932#issuecomment-1614842929 : function CodeBlock(elem) return pandoc.Table( {}, {"AlignDefault"}, {}, {{}}, {{{elem}}} ) end On Saturday, 1 July 2023 at 15:58:34 UTC+8 Sylvain Hubert wrote: > Hi all, > > I'm trying to create bounding boxes for code blocks by wrapping them > inside tables. > According to the manual, I should probably use some filter like: > > function CodeBlock(elem) > return pandoc.Table(--[[... elem ...]]) > end > > but pandoc.Table takes a giant syntax tree with levels of all sorts of > nodes. > Neither the manual nor the error message gives a useful guide of actually > creating a table. > > Could anyone provide a minimal example of creating a pandoc.Table in a lua > filter? > > Thanks > -- 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/4f0c1e08-60a7-4c97-9a7e-c3367ae32483n%40googlegroups.com. [-- Attachment #1.2: Type: text/html, Size: 2503 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <4f0c1e08-60a7-4c97-9a7e-c3367ae32483n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>]
* Re: How to wrap code blocks within new tables? [not found] ` <4f0c1e08-60a7-4c97-9a7e-c3367ae32483n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> @ 2023-07-01 8:48 ` mf [not found] ` <326e3767-e3b2-2bd3-5d60-340b2f1295bb-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 4+ messages in thread From: mf @ 2023-07-01 8:48 UTC (permalink / raw) To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw Il 01/07/23 10:09, Sylvain Hubert ha scritto: > ok just reverse-engineered it > folloing https://github.com/jgm/pandoc/issues/8932#issuecomment-1614842929 : > > function CodeBlock(elem) > return pandoc.Table( > {}, > {"AlignDefault"}, > {}, > {{}}, > {{{elem}}} > ) > end > This is the old version of tables, that now is called `SimpleTable`, see https://pandoc.org/lua-filters.html#type-simpletable You can use the same syntax with current pandoc this way: ```lua t = pandoc.SimpleTable( {}, { "AlignDefault" }, {}, { {} }, { { { elem } } } ) ``` and then convert it to a Table with: ```lua t2 = pandoc.utils.from_simple_table(t) ``` By the way, I noticed that there's no `pandoc.TableBody` constructor. The only way I found is through a lua table like this: ```lua body = { attr = pandoc.Attr(), head = {}, row_head_columns = 0, body = { pandoc.Row( { pandoc.Cell( { elem } ) } ) } } ``` So a minimal table is made like this: ```lua t = pandoc.Table( {}, -- empty caption { { 'AlignDefault', 0 } }, -- one column, default alignment and width pandoc.TableHead(), -- empty table head { body }, -- a list of one body pandoc.TableFoot() -- empty table foot ) ``` > On Saturday, 1 July 2023 at 15:58:34 UTC+8 Sylvain Hubert wrote: > > Hi all, > > I'm trying to create bounding boxes for code blocks by wrapping them > inside tables. > According to the manual, I should probably use some filter like: > > function CodeBlock(elem) > return pandoc.Table(--[[... elem ...]]) > end > > but pandoc.Table takes a giant syntax tree with levels of all sorts > of nodes. > Neither the manual nor the error message gives a useful guide of > actually creating a table. > > Could anyone provide a minimal example of creating a pandoc.Table in > a lua filter? > > Thanks > > -- > 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org > <mailto:pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/pandoc-discuss/4f0c1e08-60a7-4c97-9a7e-c3367ae32483n%40googlegroups.com <https://groups.google.com/d/msgid/pandoc-discuss/4f0c1e08-60a7-4c97-9a7e-c3367ae32483n%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/326e3767-e3b2-2bd3-5d60-340b2f1295bb%40gmail.com. ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <326e3767-e3b2-2bd3-5d60-340b2f1295bb-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>]
* Re: How to wrap code blocks within new tables? [not found] ` <326e3767-e3b2-2bd3-5d60-340b2f1295bb-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> @ 2023-07-01 9:01 ` Sylvain Hubert 0 siblings, 0 replies; 4+ messages in thread From: Sylvain Hubert @ 2023-07-01 9:01 UTC (permalink / raw) To: pandoc-discuss [-- Attachment #1.1: Type: text/plain, Size: 3126 bytes --] It works, thanks for the help! On Saturday, 1 July 2023 at 16:48:51 UTC+8 mf wrote: > Il 01/07/23 10:09, Sylvain Hubert ha scritto: > > ok just reverse-engineered it > > folloing > https://github.com/jgm/pandoc/issues/8932#issuecomment-1614842929 : > > > > function CodeBlock(elem) > > return pandoc.Table( > > {}, > > {"AlignDefault"}, > > {}, > > {{}}, > > {{{elem}}} > > ) > > end > > > > This is the old version of tables, that now is called `SimpleTable`, see > https://pandoc.org/lua-filters.html#type-simpletable > > You can use the same syntax with current pandoc this way: > > ```lua > t = pandoc.SimpleTable( {}, { "AlignDefault" }, {}, { {} }, { { { elem } > } } ) > ``` > > and then convert it to a Table with: > > ```lua > t2 = pandoc.utils.from_simple_table(t) > ``` > > By the way, I noticed that there's no `pandoc.TableBody` constructor. > > The only way I found is through a lua table like this: > > ```lua > body = { > attr = pandoc.Attr(), > head = {}, > row_head_columns = 0, > body = { pandoc.Row( { pandoc.Cell( { elem } ) } ) } > } > ``` > > So a minimal table is made like this: > > ```lua > t = pandoc.Table( > {}, -- empty caption > { { 'AlignDefault', 0 } }, -- one column, default alignment and width > pandoc.TableHead(), -- empty table head > { body }, -- a list of one body > pandoc.TableFoot() -- empty table foot > ) > ``` > > > > On Saturday, 1 July 2023 at 15:58:34 UTC+8 Sylvain Hubert wrote: > > > > Hi all, > > > > I'm trying to create bounding boxes for code blocks by wrapping them > > inside tables. > > According to the manual, I should probably use some filter like: > > > > function CodeBlock(elem) > > return pandoc.Table(--[[... elem ...]]) > > end > > > > but pandoc.Table takes a giant syntax tree with levels of all sorts > > of nodes. > > Neither the manual nor the error message gives a useful guide of > > actually creating a table. > > > > Could anyone provide a minimal example of creating a pandoc.Table in > > a lua filter? > > > > Thanks > > > > -- > > 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-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org > > <mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>. > > To view this discussion on the web visit > > > https://groups.google.com/d/msgid/pandoc-discuss/4f0c1e08-60a7-4c97-9a7e-c3367ae32483n%40googlegroups.com > < > https://groups.google.com/d/msgid/pandoc-discuss/4f0c1e08-60a7-4c97-9a7e-c3367ae32483n%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/ad7ee1d1-4fe1-4a87-9ef7-d38502db4a8en%40googlegroups.com. [-- Attachment #1.2: Type: text/html, Size: 5849 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-07-01 9:01 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-07-01 7:58 How to wrap code blocks within new tables? Sylvain Hubert [not found] ` <dcf7041b-c805-420b-ac60-07e6692e1577n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> 2023-07-01 8:09 ` Sylvain Hubert [not found] ` <4f0c1e08-60a7-4c97-9a7e-c3367ae32483n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> 2023-07-01 8:48 ` mf [not found] ` <326e3767-e3b2-2bd3-5d60-340b2f1295bb-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2023-07-01 9:01 ` Sylvain Hubert
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).