You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Sphinx中如何将多个行内数学公式写在同一行

解决Furo主题下Sphinx多行内公式换行问题
  • 合并公式与文本为单个:math:块
    把整句的文本和公式都放进一个:math:标记里,用LaTeX的\text{}包裹普通文本,整个内容会被渲染成单个行内元素,避免拆分换行:

    :math:`\text{We know that } A \to B \vdash A \to \forall x B\text{, provided that } x \text{ is not free in } A`
    

    这种方式依赖LaTeX的\text{}命令,Sphinx会通过MathJax或其他渲染器正确解析文本与公式的混合内容。

  • 使用line-block指令强制整行不拆分
    如果不想修改公式结构,用reST的line-block指令包裹整行内容,它会强制保留原始行结构,阻止自动换行:

    .. line-block::
       We know that :math:`A \to B \vdash A \to \forall x B`, provided that :math:`x` is not free in :math:`A`
    

    注意line-block的内容需要缩进至少4个空格,Sphinx会把整行当作不可拆分的块处理。

之前尝试的raw HTML方法只是临时改变了渲染逻辑,删除后回到默认行为时,多个独立的:math:元素在Furo主题的布局下容易因容器宽度或元素样式触发换行,上面两种纯reST语法的方式可以直接绕开这个问题。

内容的提问来源于stack exchange,提问作者showkey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 15:53:15