13

我使用基于 Jekyll 的博客,并且需要一个不会破坏我的 Mathjax 表达式的降价解析器(例如,解释b_t - b_{t-1}b<em>t - b</em> t - 1)。Mathjax 和 markdown 在 math.stackechange.com 和 mathoverflow.net 上相处得很好。一些解析器还需要对开始/结束等式符号进行双重转义\\(,而其他解析器似乎不需要。

不是完全解决方案的事情:

Redcarpet2有一个选项no_intra_emphasis,它可以避免字母之间的下划线被破坏,所以b_t没关系,但它仍然是 clobbers b_{t-1}

有一个 Jekyll 插件可以让你使用流动的语法,比如{% m}%开始一个等式,但这意味着文件不再是用纯 markdown 编写的,因此不能移植到其他上下文中。

那么有没有一个不同的降价解释器可以让我进入 Jekyll 并体验幸福呢?如果没有,其他人找到了哪些解决方法?

4

2 回答 2

12

Markdown 不会处理块级 HTML 标记中的任何内容,因此只需将 Mathjax 语法包装在<div> </div>其中即可保护 Mathjax 语法,而不管解释器如何。这很好地避免了必须转义开始和结束 Mathjax 的命令,例如\((inline) 和\[(display)。感谢 Github 上的@lsegal向我指出这一点。

于 2012-05-04T01:23:52.770 回答
2

是的,它是kramdown,我已经完成了配置它的过程,并在我的博客中进行了解释。我还发现您可以使用语法让 Redcarpet 接受内联数学\\( some math \\)。它将输出\( math \)到 MathJax。无论如何,我更喜欢 kramdown,因为它声明支持 LaTeX。

于 2012-07-07T05:06:56.707 回答