On Sep 25, 2022, at 5:24 PM, Albert Krewinkel <albert+pandoc-9EawChwDxG8hFhg+JK9F0w@public.gmane.org> wrote:


jcr <ffi.appdev-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes:

How do I tell `pandoc.write` to produce a standalone Markdown
document (with YAML metadata)? There's no `standalone` option for
`pandoc.WriterOptions`. I thought setting a template  might  work,
but it doesn't: the saved file does not contain a YAML block, even
though the document has metadata. My attempt is below:

```
function write_markdown_file(doc, filename)
 local options = pandoc.WriterOptions{
   template = pandoc.template.default('markdown')
 }
 local data = pandoc.write(doc, 'markdown', options)
 local file <close>, error = io.open(filename, 'w')
 if file == fail then
   io.stderr:write(string.format('Failed to write Markdown file: %s\
n', error))
   os.exit(1)
 end
 file:write(data)
end
```

I'm using pandoc 2.19.2.

The template needs to be compile for it to become usable:


   local options = pandoc.WriterOptions{
     template = pandoc.template.compile(
       pandoc.template.default('markdown')
     )
   }

Pandoc's current behavior is a bit strange though. You can raise a bug
for that if you'd like.

--
Albert Krewinkel
GPG: 8eed e3e2 e8c5 6f18 81fe  e836 388d c0b2 1f63 1124

Thank you for pointing out the problem with my code. I filed this bug, since I think an error should have been thrown for the invalid `template` value: https://github.com/jgm/pandoc/issues/8321 

--
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/C9A01954-B2BF-404C-860E-FA2716E2F24C%40gmail.com.