[英]Pandoc metadata not appearing in default HTML template
我正在使用pandoc將org和markdown文件轉換為HTML。 我想在外部YAML文件中設置元數據,如title
, subtitle
和author
標簽,並使用模板顯示它們。 但是,除了正常的身體轉換之外,我無法得到任何東西。
我正在使用默認的HTML模板。 我事先運行轉換連接YAML配置:
pandoc -t html -o output.html metadata.yaml input.md
我也試過包含yaml_metadata_block
擴展名:
pandoc -t html+yaml_metadata_block -o output.html metadata.yaml input.md
另外,我嘗試在命令本身中設置變量:
pandoc -t html -o output.html -V title="my title" input.md
我的YAML文件如下所示:
---
title: "my title"
subtitle: "my subtitle"
author: "the author"
...
使用pandoc -D html
檢查默認的html模板,看起來在定義title
等時,它將放在標題塊中:
$if(title)$
<header>
<h1 class="title">$title$</h1>
$if(subtitle)$
<p class="subtitle">$subtitle$</p>
$endif$
$for(author)$
<p class="author">$author$</p>
$endfor$
$if(date)$
<p class="date">$date$</p>
$endif$
</header>
但在每種情況下,html文件只包含來自input.md
的轉換文本。 我認為這是默認模板中定義的$body$
行。
如何讓這些字段顯示在我的html文檔中?
我的天哪,我所缺少的是-s
屬性!
從手冊頁:
-s, --standalone
Produce output with an appropriate header and footer (e.g. a standalone HTML, LaTeX, TEI, or RTF file, not a fragment). This option is set automat‐
ically for pdf, epub, epub3, fb2, docx, and odt output.
因此,以下命令按預期工作
pandoc -s -t html -o output.html metadata.yaml input.md
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.