gpt4 book ai didi

pdf - Pandoc 可以在导入的 Markdown 文件中使用 Metadata.yaml 中的变量吗?

转载 作者:行者123 更新时间:2023-12-05 03:10:50 27 4
gpt4 key购买 nike

我在将变量放入我的模板时遇到了很多麻烦。我有一个 LaTeX 模板,我想使用 Markdown 文件作为内容。最终结果应该是一个 PDF。

元数据.yaml:

---
varnameone: 'large heading'
varnametwo: 'baz'
varnamethree:
- threeone: textone
- threetwo: texttwo
---

模板.tex:

\documentclass[12t, A4]{extarticle}
\usepackage{Styles.sty}

\begin{document}

\import{chapters/}{chapter1.md} % MD-file probably not possible. So how?
\import{chapters/}{chapter2.md}
\import{chapters/}{chapter3.md}

\end{document}

第一章.md:

# This is a $varnameone$

Lorem ipsum foo bar.

## Subheading
Lorem ipsum foo bar with a $varnametwo$ and more.

\if[varnametwo == 'baz']
Lorem ipsum foo bar with a $varnamethree.threetwo$ and more.
\endif

Jade-style indentation would be even simpler:
if varnametwo == 'baz'
Lorem ipsum foo bar with a $varnamethree.threetwo$ and more.

事情是这样的:我更喜欢将 Markdown 文件用于内容,因为它们最容易编辑(由不太技术的人编辑)。我知道 Pandoc 理解它们,但我如何在其中获取这些变量?这可能吗?

最后我什至希望有一个服务器来批量生成具有不同元数据文件的文件,或者,如果可能的话,使用 JSON 数组而不是 yaml 文件。有谁知道这是否也可能?

最佳答案

Pandoc 变量只能用于 pandoc templates ,而不是文档本身。为此,您应该查看 preprocessor like gpp , 一个 pandoc filter like this one或其他脚本/模板解决方案。

类似地,pandoc 模板有一个 $body$ 变量,用于放置文档文本。您使用模板呈现文档,而不是相反(因为您尝试使用 \import{chapters/}{chapter1.md} 这是一个 LaTeX 命令,因此无法导入 Markdown ) .但是在 Mac/Linux 上你可以运行:pandoc -o foo.pdf chapter*.md 在将所有 markdown 文件传递​​给 pandoc 之前连接它们。

关于pdf - Pandoc 可以在导入的 Markdown 文件中使用 Metadata.yaml 中的变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38539304/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com