【问题标题】:Does \r stand for something in sphinx?\r 是否代表狮身人面像中的某些东西?
【发布时间】:2017-10-03 11:10:26
【问题描述】:

我正在按照 numpy 文档字符串指南编写我的文档字符串。然后我使用 sphinx 的 autodoc 来生成我的文档。在一些文档字符串中,我使用了 LaTeX 公式(sphinx.ext.mathjax)。似乎\r 意味着一些特别的东西,比如新行。如果我有以下命令:

"""
This :math:`\langle a, b\rangle` denotes the dot product of a and b
"""

它没有正确渲染。它将角度换成新行并给我一个错误:内联解释文本或短语参考起始字符串没有结束字符串 如果我用 \langle 替换 \rangle 一切正常。我该如何解决这个问题?

【问题讨论】:

  • \r 现在是合法的 SphinxQL 空间 sphinxsearch.com/bugs/view.php?id=332
  • 不只是在 Sphinx 中——\r 在很多地方都是回车符。
  • @planet260 感谢您的评论。但是我怎样才能使这项工作:)
  • 用双斜杠转义或在三引号中添加“r”(不带引号),这将禁用对引号内斜杠的解释:r"""" text \langle """
  • @planet260:问题是关于 Sphinx 文档工具,它与 Sphinx 搜索引擎无关。

标签: python python-sphinx mathjax docstring numpydoc


【解决方案1】:

解决方案是用双斜杠转义或在三引号中添加一个“r”(不带引号),这会禁用对引号内斜杠的解释:

r"""
This :math:`\langle a, b\rangle` denotes the dot product of a and b
"""

有几个前缀会影响字符串文字的定义,请参阅documentation of Python

相关摘录:

反斜杠()字符用于转义字符 否则有特殊含义,例如换行符,反斜杠本身, 或引号字符。

字符串和字节文字都可以选择前缀 字母“r”或“R”;这样的字符串称为原始字符串并对待 反斜杠作为文字字符。结果,在字符串文字中, 未对原始字符串中的“\U”和“\u”转义进行特殊处理。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多