[英]Pandoc HTML variables: `quotes` and `math`
Pandoc 默認 HTML 模板包含這兩個變量:
quotes
,
math
。
它們應該如何使用?
更具體地說,我看到quotes
設置了標簽<q>
的值。 這個標簽是否用於 Markdown 到 HTML 的轉換?
tl; dr:它們似乎大多是以前版本的 pandoc 的過時遺產
quotes
pandoc 提交的一點考古表明,當 pandoc 從使用<q>
標簽切換到直接添加引號時,添加了“引號”。 添加了一個新選項--html-q-tags
以保持以前的行為:該選項將引號括在<q>
並將quotes
設置為true
以便按照 html 模板中的說明添加一段 css 代碼。 請參閱此對 pandoc 的提交和此對pandoc-templates 的提交。 使用以下文件查看行為:
"hello world"
這個:
pandoc test.md -t html --smart --standalone
產生(跳過通常的頭部,沒有 css 影響<q>
)
<p>“hello world”</p>
雖然這
pandoc test.md -t html --standalone --html-q-tags --smart
產生(跳過通常的標題)
<style type="text/css">q { quotes: "“" "”" "‘" "’"; }</style>
</head>
<body>
<p><q>hello world</q></p>
</body>
不過你必須使用--smart
。
math
看起來這是為了在獨立文件中包含數學渲染腳本而引入的。 請參閱 2010 年的此提交。我認為一些選擇非(當前)默認數學渲染系統的命令行選項,如--mathml
,將此變量設置為實際有意義的值(如復制數學渲染腳本)。 嘗試:
pandoc -t html --mathml
對於quotes
變量,請參閱@scoa。
關於math
變量,我發現了以下內容。
使用 MathML 時,即選項--mathml
,代碼塊:
$if(math)$
$math$
$endif$
在默認的 HTML 轉換模板中,向 HTML 輸出添加了一個可移植性腳本。 無論如何,Chrome 和 Edge 目前不支持 MathML,而 Firefox 似乎在沒有此腳本的情況下支持它。 因此,對於自定義模板,刪除$if(math)$ ...
代碼塊不會影響 MathML 渲染。
使用 MathJax 時,這是選項--mathjax
, $if(math)$ ...
添加到 HTML 輸出腳本塊:
<script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_CHTML-full" type="text/javascript"></script>
這對於呈現數學公式總是必要的。
使用--latexmathml
,將 LaTeX 樣式數學轉換為 MathML 的巨型腳本由$if(math)$ ...
代碼塊插入。 如果轉換模板中沒有此代碼塊,則不會插入腳本並且無法呈現數學。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.