All,I've split this out into two functions (each currently in its own [attached as .lua.txt] file):Cheers,
- 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)
endPlease 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
endWilliamOn Tue, 7 Jun 2022 at 15:13, William Lupton <wlupton-QSt+ys/nuMyEUIsrzH9SikB+6BGkLq7r@public.gmane.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
>>
>> --