获取要在狮身人面像中显示的多行文档字符串方程.狮身人面像中的潜在错误?



在狮身人面像的官方文档中有以下一段代码:

.. math::
:nowrap:
begin{eqnarray}
y    & = & ax^2 + bx + c \
f(x) & = & x^2 + 2xy + y^2
end{eqnarray}

我尝试了很长时间才能让它工作,直到我将其更改为:

.. math::
:nowrap:
$$
\begin{eqnarray}
y    & = & ax^2 + bx + c \\
f(x) & = & x^2 + 2xy + y^2
\end{eqnarray}
$$

狮身人面像的官方文档怎么可能是错误的?还是这里发生了一些晦涩难懂的事情?甚至 Sagemath 文档似乎也建议需要使用$$(请参阅"如果您希望明确不包装 MATH 块 [...]">( 还是这是一个错误?

(我使用 Sphinx 2.2.0,在我的index.rst文件中,我将autofunction用于其文档字符串包含上述等式的函数。

狮身人面像文档指出,当你把数学标记放在autodoc读取的Python文档字符串中时,你要么必须加倍所有反斜杠,要么使用Python原始字符串(r"raw"(。发生这种情况是因为Python会在Sphinx有机会解析它之前解释字符串。

因此,如果要在文档字符串中插入math,则以下内容应该有效:

.. math::
:nowrap:
\begin{eqnarray}
y    & = & ax^2 + bx + c \\
f(x) & = & x^2 + 2xy + y^2
\end{eqnarray}

您可以通过以下方式进一步简化它:

.. math::
y    & = ax^2 + bx + c \\
f(x) & = x^2 + 2xy + y^2

:nowrap仅暗示狮身人面像不应将提供的方程包装在LaTeX"分裂"环境中(请参阅amsmath手册的第3节(。 相反,您必须按照本文的第一个示例所示提供自己的。

最新更新