如何链接到狮身人面像目录树中的页面部分 [英] How can I link to a page section in a sphinx toctree

查看:19
本文介绍了如何链接到狮身人面像目录树中的页面部分的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个.. toctree作为Shinx页面的一部分,其中包含指向我的包中其他rst文件的相对链接。如何包含指向给定页面的某个部分的链接,而不是整个页面本身?

我试了一下

.. toctree::

   page#section

但这并不管用。任何帮助都是很棒的。

推荐答案

经过多次修改,我得出了以下解决方案,但首先我应该声明我的目标是:

  1. 标题不出现在内容正文中
  2. 将标题显示在目录中

所以基本上是从目录链接到文档中任意但不可见的部分。

我需要它以便能够链接到使用SphinxContrrib PHPDomain呈现的某些源代码文档中的方法-这些方法生成它们自己的节链接,但默认情况下不会添加到TOC中。

第一步:

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

.. role:: hidden
   :class: hidden

第二步:

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

:hidden:`My Arbitrary Location`
"""""""""""""""""""""""""""""""

第三步:

向项目添加新的css(通常通过将css文件添加到_static中,或定义样式表或类似的内容-请参见this):

.rst-content .hidden {
    display: none;
}

nav .hidden {
    display: unset;
}

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

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


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

这篇关于如何链接到狮身人面像目录树中的页面部分的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆