我有一个乳胶文档(example.tex
):
documentclass{article}
begin{document}
begin{abstract}
This does not get exported.
end{abstract}
But this is fine.
end{document}
并且想要导出为纯文本:
pandoc --to=plain example.tex
然而,只有身体的文档导出,抽象是排除在出口。
我如何使pandoc
导出我的摘要?
我相信这个问题的答案在文档的某个地方,但我只是找不到在哪里相对较长时间
这是一个有趣的问题,深入到pandoc表示文档的方式。tldr:抽象被视为元数据,默认情况下不包含在纯输出中。
pandoc使用了一个简单的文档模型,该模型由主文本加上额外的元数据(如title和author)构建而成。我们可以在运行pandoc -s -t gfm example.tex
时看到这一点,它将输出GitHub风味Markdown并将元数据包含在YAML块中。
---
abstract: |
This does not get exported.
---
But this is fine.
摘要在那里,但是在YAML元数据中。元数据是否以及如何包含在输出中取决于输出格式和pandoc使用的模板。Pandoc用文档中的数据填充模板。您可以检查运行pandoc -D plain
所使用的默认模板,但是在幕后有一些添加特殊变量的魔法,因此输出仅具有一般的指导意义。
对我们来说重要的是,我们可以使用自定义模板来包含摘要:
ABSTRACT
--------
$abstract$
$body$
那么如果我们用
运行pandocpandoc -t plain --template=OUR-TEMPLATE.plain example.tex
我们得到了我们想要的:
ABSTRACT
--------
This does not get exported.
But this is fine.