All,

I've split this out into two functions (each currently in its own [attached as .lua.txt] file):
  • dump(value, maxlen=70) that returns a possibly multi-line string representation of a value
  • output(...) that's a utility function that outputs space-separated arguments, each passed to dump() and with a terminating newline if needed
Here's an updated example filter (it uses output() and doesn't call dump() directly):

local output = require 'output'
function Pandoc(doc)
    output('meta', doc.meta)
    output('blocks', doc.blocks)
end


Please feel free to do whatever you like with these functions.

In my environment I have an additional layer in which I derive a log-level from PANDOC_STATE.{trace,verbosity} and use this in a set of logging functions like this one (please let me know if you'd like me to supply these too):

function error(...)
    if logLevel >= -1 then
        output('(E)', ...)
    end
end


Cheers,
William

On Tue, 7 Jun 2022 at 15:13, William Lupton <wlupton@broadband-forum.org> wrote:
I'll need to extract the reporting functions. I'll do that soon, and post the result. This is currently working in pandoc 2.16.1 (and earlier). I haven't yet bitten the bullet of the move to 2.18.

On Tue, 7 Jun 2022 at 14:55, John MacFarlane <jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org> wrote:

That looks nice.  Can you share your utils.lua?

William Lupton <wlupton-QSt+ys/nuMyEUIsrzH9SikB+6BGkLq7r@public.gmane.org> writes:

> I think I've mentioned this before... but I'd be happy to contribute (in a
> suitable form) the somewhat-pandoc-aware utility that I use for this.
>
> Given this input:
>
> *% *cat doc.md
>
> ---
>
> a: 1
>
> b: |
>
>   2 3 4
>
> ---
>
>
> # Header
>
>
> This is a sentence (and a paragraph).
>
>
> * This is a list item
>
> * And another
>
>
> | Right | Left | Default | Center |
>
> |------:|:-----|---------|:------:|
>
> |   12  |  12  |    12   |    12  |
>
> |  123  |  123 |   123   |   123  |
>
> |    1  |    1 |     1   |     1  |
>
>
> : Demonstration of pipe table syntax.
>
> and this filter:
>
> *% *cat rep.lua
>
> local utils = require 'utils'
>
>
> -- do it this way to avoid reporting MetaBlocks twice
>
> function Pandoc(doc)
>
>     utils.temp('meta', doc.meta)
>
>     utils.temp('blocks', doc.blocks)
>
> end
>
> this command:
>
> pandoc doc.md -L rep.lua >/dev/null 2>doc.txt
>
> generates the attached.
>
> On Tue, 7 Jun 2022 at 08:57, <denis.maier-NSENcxR/0n0@public.gmane.org> wrote:
>
>> Hi,
>>
>> When playing around with filters I use pprint.lua or inspect.lua to
>> visualize lua tables. Would it make sense to include some sort of «print
>> the contents of this table» to pandoc ?
>>
>> Best,
>>
>> Denis
>>
>> --

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/CAEe_xxjopWC0y3Nk-ZrHSWDoAAj71szfHhivi%3Dc42zK_aFpZ4Q%40mail.gmail.com.