3

我的博客有问题。写帖子时,我还可以使用 MathJax 添加数学。我也有我的一点标记语言,我可以在其中处理斜体和粗体文本。斜体的语法与 MathJax 的下标语法发生冲突。

因此,如果我在端口中写入以下内容:

My cat was doing this strange sound: _Prrrrrr_.

下划线之间的文本通过使用斜体样式的 span 标签重新绘制。

但是在 MathJax 中使用下划线意味着有下标。有时我当然会遇到问题。关键是首先处理我的标记语言,然后才能运行 Mathjax。

有没有办法告诉 MathJax 在不使用下划线但使用替代语法的情况下制作下标和上标?

谢谢

4

2 回答 2

1

有一种方法。如此处所述使用宏:在 MathJax 中配置 Tex。通过设置这样的东西:

MathJax.Hub.Config({TeX: {Macros:{subscript:['_{#1}',1],superscript:['^{#1}',1]}}});

系统(MathJax)会用下划线代替这些东西然后解析,我的问题其实是这样解决的!

于 2012-09-13T13:10:29.307 回答
0

我发现用反斜杠转义下划线很有帮助,如下所示:

...strange sound: \_Prrrrrr\_.

但这确实导致一些解析器错误地呈现事物。

但是,如果您还将 ' ' 定义\_为仅输出 ' _' 的宏,那么这一切似乎都有效。

在 MathJax 中执行此操作:

MathJax.Hub.Config({TeX: {Macros: { '\_': ['_'] }}, /* rest of config here... */ });

要在 Katex 中执行此操作,我更改katex_config.js为:

module.exports = {
  macros: { '\\_': '_' }
}
于 2021-04-16T09:12:39.213 回答