I just built a from scratch test. Unfortunately, it seems that with output to chunkedhtml, variables are only used on the first page and then lost, so it’s not possible to do conditionals or use metadata in a template. But I may be missing something, so I’m not reporting this as a bug yet.

I’m using this, with a simple template:

pandoc
--standalone
--from=markdown
--to=chunkedhtml
--toc
--split-level=2
--template=chunking_test_template.htm
--defaults=chunking_test_metadata.yml
--metadata metavar1fromcommandline="This is the value of metavar1fromcommandline"
chunking_test_source.md
--output=chunking_test_output_folder

As seen in the attached screenshot, the variables set (1) in the Markdown file, (2) the YAML defaults file and (3) on the command line are present on “index.html”, but not on the following pages.

chunking_test_results.png
Martin Post schrieb am Montag, 13. Februar 2023 um 13:01:25 UTC+1:
No, the toc is different from the chunkedhtml nav links (top, next.url, previous.url). And these are available. It’s just that the metadata variable that I use to conditionally place the navigation section is lost with --to=chunkedhtml.

William Lupton schrieb am Montag, 13. Februar 2023 um 12:53:40 UTC+1:
I haven't used chunked html, but did notice this in the manual. Not sure whether this affects you here...

The navigation links can be customized by adjusting the template. By default, a table of contents is included only on the top page. To include it on every page, set the toc variable manually.


On Mon, 13 Feb 2023 at 11:32, Martin Post <martinpo...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
I’m running Pandoc from a shell script, with multiple passes. The HTML template I am using here is fairly complex and should be used both for html and chunkedhtml output.

In the template, I have placed a navigation in a conditional (simplified here):

$-- $if(document-type-chunked)$
<nav class="sitenav">
<a href="$next.url$">$next.title$</a>$ <a href="$previous.url$">$previous.title$</a>
</nav>
$-- $endif$

In the shell script, I set this meta variable (document-type-chunked):

pandoc --standalone $(basename $file) --to=chunkedhtml --metadata document-type-chunked=true --output=${outputname%.*}

The metadata variable is still true for the first page of the chunked output (index.html), but not for the remaining chunks, so they get no navigation.

Am I making a mistake?

I realize I could also put conditionals around each single navigation item ($if(next.url)$), but it would be easier to build complex templates if I could pass a variable to the template.

Could this be resolved differently?

Thank you.

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/b8b475d4-9741-41b0-add8-8b057e6e867fn%40googlegroups.com.

--
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/71cbde8f-0eb8-432f-9718-5b3ff807e210n%40googlegroups.com.