簡體   English   中英

Pandoc元數據未出現在默認HTML模板中

[英]Pandoc metadata not appearing in default HTML template

我正在使用pandoc將org和markdown文件轉換為HTML。 我想在外部YAML文件中設置元數據,如titlesubtitleauthor標簽,並使用模板顯示它們。 但是,除了正常的身體轉換之外,我無法得到任何東西。

我正在使用默認的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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM