Pandoc,从 Markdown 到 PDF - 如何在每章上重新开始脚注编号

Pandoc,从 Markdown 到 PDF - 如何在每章上重新开始脚注编号

我正在写一篇文章,但遇到了一个问题。在我的小示例中,我有两个 Markdown 文件

  • test1.md: 一章有两个脚注,[^1] 和 [^2]
  • test2.md: 一章有两个脚注,[^1] 和 [^2]

通过 pandoc 将每个文件转换为 PDF 可使这些脚注保持正确。当我生成合并的 PDF 时,问题就出现了。然后我得到了从 1 到 4 排序的四个脚注。我使用这个 metadata.yaml:

---
title: Prueba footnotes
author: javipas
date: 2023-01-11
tags: [documentation, example]
documentclass: book
header-includes: |
  \usepackage{footnotebackref}
  \usepackage{chngcntr}
  \counterwithout{footnote}{chapter}
---

pandoc命令的使用方式如下:

pandoc -t pdf test1.md test2.md metadata.yaml -s --file-scope --output=test.pdf

但我得到的只是在显示它们的页面末尾的脚注 1 和 2(第 1 章的 1 和 2),然后是在第 2 章中显示它们的页面末尾的脚注 3 和 4(第​​ 2 章的 1 和 2)。

我想要的是脚注在每一章重新开始,所以那些 3 和 4 应该再次变成 1 和 2。我看到关于超级用户使用 --file-scope 标志可能会有所帮助,但实际上并没有(或者我不知道如何)。我见过有答案如果您使用 LaTeX 编辑器编写文档,但这对我来说有点太多了,如果可能的话,我愿意继续使用 Markdown。

我在 Mac M1 上使用 MacTex,并将 macOS Ventura 更新到最新版本。Pandoc 的版本是 2.19.2。我认为一些 TeX 标头包含可能会有所帮助,但 metadata.yaml 中使用的那些似乎不是正确的。

答案1

首先说几点:

  1. 自 2018 年起,您无需chngcntr再加载
  2. 重置每章脚注的正确命令是:\counterwithin*{footnote}{chapter}

但它仍然不起作用,因为pandoc默认情况下禁用章节和节编号,所以没有可以重置脚注计数器的章节计数器。

可以通过启用编号选项来解决此问题-N

pandoc test1.md test2.md metadata.yaml -N --output=test.pdf

如果您确实想要未编号的章节,您可以尝试 Gonzalo Medinas 针对带星号章节的解决方案:https://tex.stackexchange.com/a/53533/29873

相关内容