【发布时间】:2018-12-25 18:57:35
【问题描述】:
我正在创建一个新的 Jekyll 博客设置,我想在其中自行托管并生成服务器端的所有内容(所以基本上除了 Disqus 和 Google Analytics 之外的所有内容)。我希望我的网站即使在关闭 JS 的浏览器上也能正常运行,这就是为什么我在网站生成期间使用 Kramdown+Rouge 进行语法高亮和使用 KaTex 来渲染 TeX 公式的原因。
我发现了一个问题。当我有这样的例子时:
```bash
$ echo test
test
```
它会在 KaTeX 命令内部中断:
{% katexmm %}
{{ content }}
{% endkatexmm %}
我找到原因了:
- rouge 将 sn-p 变成类似
<span class="gp">$</span>的东西 -
katexmm预计每个$都与另一个$配对或转义为\$
我想知道的是如何解决这个问题,例如通过在pre 中转义所有$,但保留其他$(旨在用作实际的LaTeX sn-ps)完好无损。或者也许以某种方式配置 jekyll-katex 以忽略未配对的$? (throw_error: false 选项在文本已经使用美元符号匹配后起作用,所以它没有帮助)。
我想在配置中解决这个问题,或者代替应用katexmm,这样我就不必修改任何帖子的内容。
【问题讨论】: