Pandoc:从tex到html的完整传递?

时间:2017-11-24 13:21:01

标签: pandoc

我正在使用pandoc将 TeX 文件转换为 HTML 文件(与JeKyll一起使用)。

我希望将一些原始块直接插入到 TeX 文件中,而不会有任何改动,从 TeX 转换到 TeX >到 HTML

例如,我可能想要添加如下内容:

{% highlight python %}
def func(ok):
    return ok
{% endhighlight %}

我可以使用{=html} md HTML 执行此操作,但是 TeX-> md 部分呢? ?

1 个答案:

答案 0 :(得分:3)

这需要使用过滤器,正如@ mb21指出的那样。

您可能希望输入文档保持有效的LaTeX,因此一个好的方法是使用特别标记的逐字环境,如下所示:

\begin{verbatim}
%%%HTML
<aside>Embedding raw HTML can be helpful</aside>
\end{verbatim}

Pandoc会将其读作普通代码块,但我们可以使用过滤器将其转换为原始HTML块:

function CodeBlock(cb)
  local rawHtml = cb.text:match('^%s*%%%%%%HTML\n(.*)')
  if rawHtml then
    return pandoc.RawBlock('html', rawHtml)
  end
end

将上述内容保存到文件中,并将其用作pandoc&#39; --lua-filter选项的参数。