【问题标题】:Glossaries with Pandoc (+ LaTeX)Pandoc (+ LaTeX) 的词汇表
【发布时间】:2017-02-27 01:46:29
【问题描述】:

我正在尝试使用带有 Markdown 输入、PDF (/LaTeX) 输出的 Pandoc 创建词汇表。我遵循了使用glossaries 库的文档here似乎一切正常,除了实际上打印出了词汇表!是的,我的模板中有\printglossaries

那里提到的文档

文件处理现在必须包括对makeglossaries 的调用,然后至少进一步调用latexpdflatex

其中...我没做过,因为我不知道怎么做。正如它所说,使用 pandoc 再次运行 latexpdflatex 是否有规范或简单的方法?


到目前为止我做了什么:

  1. 复制默认模板(使用pandoc -D latex)并在$body$之后添加此模板,在参考书目之前:

    $if(glossary)$
    \printglossaries
    $endif$
    
  2. 更新了我的主文档 YAML 元数据以包含 glossary: true

  3. 我的header-includes 部分如下所示:

    header-includes:
        - \usepackage{glossaries}
        - \makeglossaries
        - \newglossaryentry{foo}{name=bar, description={baz}}
    
  4. 在文档中,\gls{foo} 位于开头附近的任意位置,确实获得了超链接,只是……没有任何地方。
  5. 使用pandoc --standalone --template=aui.latex my_document.md -o my_document.pdf编译。

我也尝试过不使用条件 glossary 变量的东西,以防万一这会破坏事情,但没有任何变化。

【问题讨论】:

  • 你能显示一些数据吗?您在 pandoc markdown 中的词汇表的摘录,您添加到标准 pandoc 模板的行,以及您当前用于编译它的命令。
  • 你可以随时pandoc -o out.tex && pdflatex out.tex && pdflatex out.tex
  • @mb21 啊,我没有意识到你必须打电话给pdflatex out.tex两次。 @scoa 当然,让我更新问题。

标签: latex pandoc


【解决方案1】:

如果您使用glossaries beginners guide 第 4 节中的选项 1 来显示您的词汇表,则不需要多次调用 pdflatex。一次运行它应该可以编译。

此外,如果您想在 Markdown 文件中使用较少延迟的语法,您可以使用我写的过滤器:pandoc-gls。 pandoc-gls 存储库也有一个用于上述选项 1 的示例元部分设置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-09
    • 1970-01-01
    • 2014-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多