【发布时间】:2017-10-23 11:19:45
【问题描述】:
很容易在 Markdown 文档中编写 TeX 方程并将它们转换为实际排版方程 using pandoc(1.18 版),无论是在 PDF 文档(通过 LaTeX)还是 HTML 文档(通过 MathJax)中:在 @987654330 中环绕数学@ 用于内联方程,$$...$$ 用于块方程。
但是,MathJax 和 TeX 语法之间似乎存在差异,带有 % 等特殊字符。例如,考虑这个示例文档:
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
$$\text{\% change} = \frac{x_2 - x_1}{x_1} \times 100$$
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
使用命令通过 LaTeX 将其转换为 PDF
pandoc test.md -o test.pdf
正确生成未转义的百分号:
但是,使用 MathJax 将相同的文档转换为 HTML,使用命令
pandoc test.md -s --mathjax -o test.html
错误地产生了一个转义的百分号:
目前,在将文档转换为 PDF/HTML 之前,我一直在手动转义/取消转义百分号,这似乎违背了拥有可以转换为任何格式的主 Markdown 文档的目的。
在 TeX 和 MathJax 中处理转义百分号的正确方法是什么? MathJax 中是否有允许转义特殊字符的设置?我需要告诉 LaTeX 在数学模式下接受未转义的百分号吗?
【问题讨论】:
-
这听起来像是 MathJax 中的一个错误,您使用的是最新版本吗?
-
这发生在当前版本 2.7.1:github.com/mathjax/MathJax/releases/tag/2.7.1
-
多余的转义斜线也出现在 MathJax 主站点的现场演示中:mathjax.org/#modal-livedemo。这让我觉得这不一定是一个错误,而是设计使然(在这个论坛上,听起来 % 是 not 对待一个特殊的、可逃避的字符:groups.google.com/d/msg/mathjax-users/Ed1nKT-xtAE/IKvO_NZ9e1QJ)
-
可能与它所在的
\text{}有关...为什么不改用\percent? -
郑重声明,MathJax 不支持
\text{}内的宏(唯一的例外是$重新进入数学模式),请参阅 the documentation。