左对齐 Sphinx HTML 输出中的所有数学块

Left-align all math blocks in Sphinx HTML output

我有 Sphinx 文档,其中包含来自 the math directive 的数学块。默认情况下,它们位于 HTML 输出的中心。我希望它们都显示为左对齐,但相对于周围的文本有一些缩进。

例如,如果这是 index.rst

For :math:`|r| < 1`:

.. math::

   \sum\limits_{k=0}^{\infty} r^k = \frac{1}{1-r}

Text in following paragraph put here to demonstrate that the math block
is in fact centered on the page.

conf.py 完全是空的,然后 运行 sphinx-build . output 在同一文件夹中生成以下 HTML 在浏览器中查看的页面:

我希望该公式和所有其他数学块左对齐,类似 2 "em" indentation. This question询问如何左对齐单个数学块。我希望有一种方法可以在整个文档中实现相同的效果,而无需更改 reStructuredText 源代码中的每个数学指令。

此答案适用于 MathJax,HTML 输出中的默认数学渲染器。

conf.py 中的以下设置左对齐所有 math 指令内容:

mathjax3_config = {'chtml': {'displayAlign': 'left'}}

可以使用 displayIndent:

自定义缩进
mathjax3_config = {'chtml': {'displayAlign': 'left',
                             'displayIndent': '2em'}}

参考文献: