Sphinx literalinclude 指令中的缩进块

Deindent Block in Sphinx literalinclude Directive

我在文件中有一段代码,我想使用 literalinclude 指令将其包含在 Sphinx 文档的示例中。

但是该代码在一个函数中,所以当我包含它时,示例中的每一行都比我想要的多缩进了一级。

.. literalinclude:: ../../examples/example.py
   :language: python
   :lines: 13-42
   :tab-width: 0

生产

    import foo
    from foo import bar

    print("I'm indented too far")

是否有任何其他方法可以删除或缩进文字块?

literalinclude 有一个 dedent 选项:

.. literalinclude:: ../../examples/example.py
   :language: python
   :lines: 13-42
   :tab-width: 0
   :dedent: 4

该选项在 literalinclude 文档的“其他选项”下提到,但详细信息在 the documentation for code-block