R blogdown hugo 主题上未遵循有关 LaTeX 的 Pandoc 规则

Pandoc rules regarding LaTeX not followed on R blogdown hugo themes

我可以使用默认 hugo-lithium 主题创建一个新的 blogdown 站点,并且下面的文本语句不会呈现为 LaTeX 方程式,这是我期望的行为。

An amount between and .

Pandoc's manual 解释了原因,我将在下面粘贴并着重强调:

Anything between two $ characters will be treated as TeX math. The opening $ must have a non-space character immediately to its right, while the closing $ must have a non-space character immediately to its left, and must not be followed immediately by a digit. Thus, ,000 and ,000 won’t parse as math. If for some reason you need to enclose text in literal $ characters, backslash-escape them and they won’t be treated as math delimiters.

但是,我可以更改为其他 Hugo 主题(例如 hugo-theme-codex),每当我在我的 YAML 中包含 math: true 时,这个完全相同的文本块就会呈现不正确。

An amount between and . 最终显示为:

当 Pandoc 应该遵循我上面引用的规则时,为什么会调用 LaTeX?我怎样才能使用“其他”雨果主题,仍然使用 LaTeX 数学方程式,并让 Pandoc 遵循它自己的规则?不幸的是,转义 $ 不会执行任何操作,并显示与未转义版本相同的结果。

# Doesn't work
An amount between $5 and $10.

加入双斜杠转义操作似乎也不起作用:

# Doesn't work
An amount between \ and \.


对于那些想知道的人 - 最后两个问题已经得到回答,, ,如果这个问题得到回答,这应该是这个分为三部分的故事的结尾。

首先创建以下文件:

/your-blogdown-site/themes/hugo-theme-codex/layouts/partials/math.html

然后将其添加到您刚刚创建的 math.html 的正文中:

<script src="//yihui.org/js/math-code.js"></script>
<script async
src="//cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-MML-AM_CHTML">
</script>

只有 MathJax 版本 2.7.5 似乎可以正常工作。

blogdown book templates section 是阅读 material 此类内容的良好来源。您必须在 YAML 中包含 math: true 才能使用此方法显示 LaTeX 数学方程式。