【问题标题】:MathJax not rendering in SphinxMathJax 不在 Sphinx 中渲染
【发布时间】:2013-11-08 11:01:48
【问题描述】:

我在 Sphinx reST 中有一个文档集。 我在 conf.py 中包含了 sphinx.ext.mathjax,并包含了“mathjax_path = 'http://cdn.mathjax.org/mathjax/latest/MathJax.js'”这一行。 我相信在向 rst 文件添加标记之前,我需要做的就是这些。但是我的方程式没有被渲染。例如,

:math:`a^2 + b^2 = c^2`

从浏览器中出来

\(a^2 + b^2 = c^2\)

没有花哨的字体或任何东西。 HTML是

<span class="math">\(a^2 + b^2 = c^2\)</span>

【问题讨论】:

  • 来自未来的注意事项:cdn.mathjax.org 即将结束生命周期,请查看mathjax.org/cdn-shutting-down 以获取迁移提示(也许为未来的读者更新您的帖子)。

标签: python-sphinx mathjax


【解决方案1】:

我遇到了同样的问题。我通过将 mathjax_path 变量(在 conf.py 文件中)设置为:

mathjax_path="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"

【讨论】:

【解决方案2】:

您仍然需要在 conf.py 文件中声明 sphinx-doc 的扩展。

在 conf.py 文件的顶部,在“常规配置”下的 import sys, os 之后不久,您将看到 cmets 关于包含扩展的注释。对于 mathjax,您需要将其添加到列出的扩展中:

 # Add any Sphinx extension module names here, as strings. They can be extensions
 # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
 extensions = ['sphinx.ext.todo', 'sphinx.ext.mathjax', 'sphinx.ext.ifconfig']

(我只是复制粘贴了我自己的,您目前可能有其他或没有列出的扩展名)。

结合您已经设置的 mathjax_path 应该可以工作。

【讨论】:

  • @caduceus 并且你确定你有一个工作的互联网连接......只是检查,否则你需要下载 mathjax 并提供一个本地路径才能工作。
【解决方案3】:

这里有一些选项:

  1. 您必须安装 libjs-mathjax:
    apt-get install libjs-mathjax
  1. 你应该在文档行前加上“r”前缀:
    r"""
      :math:`a^2 + b^2 = c^2`

    """
  1. 您必须避免在方程式中使用空格(使用“r”前缀可以避免此解决方案)
   """
     :math:`a^2+b^2=c^2`

   """
  1. 您可以混合所有以前的解决方案
    r"""
      :math:`a^2+b^2=c^2`

    """

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-28
    • 2013-02-11
    • 1970-01-01
    • 2013-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多