Python sphinx 如何链接到sphinx目录树中的页面部分

Python sphinx 如何链接到sphinx目录树中的页面部分,python-sphinx,sections,toctree,Python Sphinx,Sections,Toctree,我有一个。。目录树作为sphinx页面的一部分,其中包括指向我的软件包中其他rst文件的相对链接。我怎样才能包括一个链接到一个给定页面的一个子部分,而不是整个页面本身 我试了一下 .. toctree:: page#section 但那没用。任何帮助都很好。在创建ToC时,Sphinx在配置的树深度中包含引用文件的所有标题和副标题。因此,您可以简单地不以标题开始页面,并在您希望ToC指向的点插入标题,例如: .. _my-rst-file: **You can use bold pri

我有一个
。。目录树
作为sphinx页面的一部分,其中包括指向我的软件包中其他
rst
文件的相对链接。我怎样才能包括一个链接到一个给定页面的一个子部分,而不是整个页面本身

我试了一下

.. toctree::

   page#section

但那没用。任何帮助都很好。

在创建ToC时,Sphinx在配置的树深度中包含引用文件的所有标题和副标题。因此,您可以简单地以标题开始页面,并在您希望ToC指向的点插入标题,例如:

.. _my-rst-file:
**You can use bold print here if you want. This will not appear in the ToC**
.. rubric:: Or the "rubric" directive

And here some more text, normal font weight.

Here comes the heading that will appear in the ToC
""""""""""""""""""""""""""""""""""""""""""""""""""
And so on...
您需要像往常一样在ToC中包含页面引用。 因此,在ToC中,您有:

.. toctree::

   my_rst_file

在我们的示例中,构建结果(HTML、PDF等)将只引用
,这是ToC中出现的标题。

经过多次黑客攻击后,我得出了以下解决方案,但我应该首先声明我的目标是:

  • 标题不显示在内容正文中
  • 将标题显示在目录中
  • 所以基本上是从TOC链接到文档中任意但不可见的部分

    为了能够链接到使用Sphinxcontrib PHPDomain呈现的一些源代码文档中的方法,我需要这些方法——这些方法生成自己的节链接,但默认情况下不会添加到TOC中

    步骤1:

    在需要此链接功能的RST文件顶部,添加如下新角色:

    .. role:: hidden
       :class: hidden
    
    :hidden:`My Arbitrary Location`
    """""""""""""""""""""""""""""""
    
    步骤2:

    在内容中的某个位置,使用以下角色:

    .. role:: hidden
       :class: hidden
    
    :hidden:`My Arbitrary Location`
    """""""""""""""""""""""""""""""
    
    步骤3:

    将新CSS添加到项目中(通常通过将CSS文件添加到
    \u static
    ,或定义样式表或类似内容来完成-请参阅):

    这将强制标题隐藏在内容中,但显示在TOC中

    然后,根据需要在其他文档中重用该角色


    请注意,如果您的目标是链接到文档中的任意位置,并且标题仍然显示在内容中,那么只需更改CSS以根据您的喜好设置标题样式,而不是隐藏它们