Hi, can I pls get another bit of related advice - 1) See below implementation -- is this the cleanest approach to get it to handle errors? I'm trying to find a way to print out debug info only in case of error. 2) Is there a way to access the position of AST/input file so can print it in log as well? ``` return { { Div = function (div) local success, res = pcall(function () if (div.attributes['custom-style'] == 'Internal Heading') then return pandoc.Header(2, div.content[1].content) end if (div.attributes['custom-style'] == 'Example') then if pandoc.utils.type(div.content[1].content) == "Blocks" then return pandoc.Header(2, div.content[1].content[1].content) else return pandoc.Header(2, div.content[1].content) end end return div end) -- Quit processing on error if (success ~= true) then print("Failed to process element!\r\nError: ", res, "\r\nElement: ", div) error("Processing Exception!") else return res end end, } } ``` On Saturday, February 18, 2023 at 1:15:41 PM UTC-7 Ben Menashe wrote: > Oh sorry, there are few with same string, the one it fails one shows in > gfm like this (w/o Lua filter): > > ``` >
> > > *Example666:* > >
> ``` > > hmm, I guess I see issue, it would not work to convert as: "## > ..." -- > OK, perhaps header isn't the right approach for the Example style... at > least I have some idea now how to work with it and print out debug info. > Thanks for your guidance! > > On Saturday, February 18, 2023 at 12:59:21 PM UTC-7 Bastien DUMONT wrote: > >> Sorry, I don't understand why there is a block quote in native output and >> not in gfm. However, has a style been applied to the "Example:" string in >> the DOCX file that triggers it to be parsed as a block quote? >> >> Le Saturday 18 February 2023 à 11:46:56AM, Ben Menashe a écrit : >> > If I take out the Lua filter, I can see this is the result in md >> file... I'm >> > not sure either why it's not working. >> > >> >
>> > >> > *Example:* >> > >> >
>> > >> > On Saturday, February 18, 2023 at 12:39:39 PM UTC-7 Bastien DUMONT >> wrote: >> > >> > Inline formatting should be preserved without any problem. The cause of >> the >> > trouble here is is that you have a block quote inside what should be >> your >> > header, which IMO does not make sense. >> > >> > Le Saturday 18 February 2023 à 11:26:01AM, Ben Menashe a écrit : >> > > Hmm, yea, I see -- it's part of large original docx, so it was >> failing on >> > > another element styled as Example & had italics applied. >> > > I printed the div in Lua filter, when it works I see this: >> > > >> > > ``` >> > > >> > > Div ("",[],[("custom-style","Example")]) [Para [Str "Test",Space,Str >> > > "example"]] >> > > >> > > ``` >> > > >> > > and when fails this: >> > > ``` >> > > >> > > Div ("",[],[("custom-style","Example")]) [BlockQuote [Para [Emph [Str >> > > "Example:"]]]] >> > > >> > > ``` >> > > >> > > >> > > is there any clean way to approach this so it will work in a generic >> way >> > and >> > > preserve any other formatting applied? >> > > >> > > On Saturday, February 18, 2023 at 1:19:46 AM UTC-7 Bastien DUMONT >> wrote: >> > > >> > > With your examples, I get: >> > > >> > > ## Scope >> > > >> > >
>> > > >> > > Test body >> > > >> > >
>> > > >> > > ## Test nested >> > > >> > > Le Friday 17 February 2023 à 07:00:47AM, Ben Menashe a écrit : >> > > > Thank you so much...that worked - I was missing the [1].content. >> > > > But let's say I have another 'Example' custom style under it... w/o >> Lua >> > > filter >> > > > it renders this structure: >> > > > >> > > > ``` >> > > >
>> > > > >> > > > Scope >> > > > >> > > >
>> > > > >> > > >
>> > > > >> > > > Test body >> > > > >> > > >
>> > > > >> > > >
>> > > > >> > > > Test nested >> > > > >> > > >
>> > > > ``` >> > > > >> > > > And with filter below it fails on line 8 w/ this error "Inline, >> list of >> > > > Inlines, or string expected, got Blocks"... any idea on how to >> > > troubleshoot >> > > > such issues?: >> > > > >> > > > ``` >> > > > return { >> > > > { >> > > > Div = function (div) >> > > > if (div.attributes['custom-style'] == 'Internal Heading') then >> > > > return pandoc.Header(2, div.content[1].content) >> > > > end >> > > > if (div.attributes['custom-style'] == 'Example') then >> > > > return pandoc.Header(2, div.content[1].content) >> > > > end >> > > > >> > > > return div >> > > > end, >> > > > } >> > > > } >> > > > ``` >> > > > On Friday, February 17, 2023 at 1:10:11 AM UTC-7 Bastien DUMONT >> wrote: >> > > > >> > > > In this case, it would be preferable to turn the div into a Header >> > > element >> > > > and let Pandoc format it itself: >> > > > >> > > > ``` >> > > > function Div(div) >> > > > if div.attributes['custom-style'] == 'Internal Heading' then >> > > > return pandoc.Header(2, div.content[1].content) >> > > > end >> > > > end >> > > > ``` >> > > > >> > > > Le Thursday 16 February 2023 à 08:00:08PM, Ben Menashe a écrit : >> > > > > Hi, >> > > > > We have a need to convert docx to gfm. >> > > > > Since docx has some user defined styles we use this "+styles" >> > > extension: >> > > > > >> > > > > >> > > > > pandoc --to=gfm -f docx+styles --output=rtb.md --extract-media=. >> > --wrap >> > > = >> > > > none >> > > > > 'rtb.docx' >> > > > > >> > > > > >> > > > > So now we have html div that wraps our content. Let's say I want >> to >> > > > transform >> > > > > this: >> > > > > >> > > > >
>> > > > > >> > > > > Scope >> > > > > >> > > > >
>> > > > > >> > > > > Into: >> > > > > >> > > > > ## Scope >> > > > > >> > > > > How can it be done? I tried to setup a Lua filter but not having >> > > success >> > > > to >> > > > > have it output "##" along with the div content. >> > > > > >> > > > > >> > > > > -- >> > > > > 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][1][1]https:// >> > > [1]groups.google.com/ >> > > > d/msgid/ >> > > > > pandoc-discuss/3909f520-e8db-4cf9-900d-6a5a858c1a18n%[2] >> > > > [2][2]40googlegroups.com. >> > > > > >> > > > > References: >> > > > > >> > > > > [1] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org >> > > > > [2] [3][3][3]https://groups.google.com/d/msgid/pandoc-discuss/ >> > > > 3909f520-e8db-4cf9-900d-6a5a858c1a18n%[4][4]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 [4]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org >> > > > To view this discussion on the web visit [5][5][5]https:// >> > groups.google.com/ >> > > d/msgid/ >> > > > pandoc-discuss/52ada5c3-e26e-4c8c-8b3f-b55bb8ce8e1en%[6] >> > > [6]40googlegroups.com. >> > > > >> > > > References: >> > > > >> > > > [1] [7][7]https://groups.google.com/d/msgid/ >> > > > [2] [8][8]http://40googlegroups.com/ >> > > > [3] [9][9]https://groups.google.com/d/msgid/pandoc-discuss/ >> > > 3909f520-e8db-4cf9-900d-6a5a858c1a18n%[10] >> 40googlegroups.com?utm_medium= >> > email& >> > > utm_source=footer >> > > > [4] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org >> > > > [5] [10][11]https://groups.google.com/d/msgid/pandoc-discuss/ >> > > 52ada5c3-e26e-4c8c-8b3f-b55bb8ce8e1en%[12] >> 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 [11]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org >> > > To view this discussion on the web visit [12][13]https:// >> > groups.google.com/d/msgid/ >> > > pandoc-discuss/ef5a0088-1df4-4540-98d5-a0120df8f3cen%[14] >> > 40googlegroups.com. >> > > >> > > References: >> > > >> > > [1] [15]https://groups.google.com/ >> > > [2] [16]http://40googlegroups.com/ >> > > [3] [17]https://groups.google.com/d/msgid/pandoc-discuss/ >> > > [4] [18]http://40googlegroups.com/?utm_medium=email& >> > > [5] [19]https://groups.google.com/d/msgid/ >> > > [6] [20]http://40googlegroups.com/ >> > > [7] [21]https://groups.google.com/d/msgid/ >> > > [8] [22]http://40googlegroups.com/ >> > > [9] [23]https://groups.google.com/d/msgid/pandoc-discuss/ >> > 3909f520-e8db-4cf9-900d-6a5a858c1a18n% >> 40googlegroups.com?utm_medium=email& >> > utm_source=footer >> > > [10] [24]https://groups.google.com/d/msgid/pandoc-discuss/ >> > 52ada5c3-e26e-4c8c-8b3f-b55bb8ce8e1en% >> 40googlegroups.com?utm_medium=email& >> > utm_source=footer >> > > [11] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org >> > > [12] [25]https://groups.google.com/d/msgid/pandoc-discuss/ >> > ef5a0088-1df4-4540-98d5-a0120df8f3cen% >> 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 [26]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org >> > To view this discussion on the web visit [27] >> https://groups.google.com/d/msgid/ >> > pandoc-discuss/5aeae8ad-aec8-4f00-b51c-9ffddf8c112fn%40googlegroups.com. >> >> > >> > References: >> > >> > [1] http://groups.google.com/ >> > [2] http://40googlegroups.com/ >> > [3] https://groups.google.com/d/msgid/pandoc-discuss/ >> > [4] http://40googlegroups.com/?utm_medium= >> > [5] https://groups.google.com/ >> > [6] http://40googlegroups.com/ >> > [7] https://groups.google.com/d/msgid/ >> > [8] http://40googlegroups.com/ >> > [9] https://groups.google.com/d/msgid/pandoc-discuss/ >> > [10] http://40googlegroups.com/?utm_medium=email& >> > [11] https://groups.google.com/d/msgid/pandoc-discuss/ >> > [12] http://40googlegroups.com/?utm_medium=email& >> > [13] https://groups.google.com/d/msgid/ >> > [14] http://40googlegroups.com/ >> > [15] https://groups.google.com/ >> > [16] http://40googlegroups.com/ >> > [17] https://groups.google.com/d/msgid/pandoc-discuss/ >> > [18] http://40googlegroups.com/?utm_medium=email& >> > [19] https://groups.google.com/d/msgid/ >> > [20] http://40googlegroups.com/ >> > [21] https://groups.google.com/d/msgid/ >> > [22] http://40googlegroups.com/ >> > [23] >> https://groups.google.com/d/msgid/pandoc-discuss/3909f520-e8db-4cf9-900d-6a5a858c1a18n%40googlegroups.com?utm_medium=email&utm_source=footer >> > [24] >> https://groups.google.com/d/msgid/pandoc-discuss/52ada5c3-e26e-4c8c-8b3f-b55bb8ce8e1en%40googlegroups.com?utm_medium=email&utm_source=footer >> > [25] >> https://groups.google.com/d/msgid/pandoc-discuss/ef5a0088-1df4-4540-98d5-a0120df8f3cen%40googlegroups.com?utm_medium=email&utm_source=footer >> > [26] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org >> > [27] >> https://groups.google.com/d/msgid/pandoc-discuss/5aeae8ad-aec8-4f00-b51c-9ffddf8c112fn%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/32f5e6dc-baa9-4d92-a351-29bfacb7c38dn%40googlegroups.com.