我有一个代码库,一些Sphinx生成的文档,以及一些运行代码示例的Jupyter笔记本。我想要做的是在我的Sphinx文档的侧边栏中添加外部链接到笔记本。这就是问题:我不希望在每个页面上看到侧边栏中的链接,也不希望在每个包含它们的页面上看到相同的链接集。例如,我不需要主页面上的任何链接,但是当我查看特定模块的文档时,我想在侧边栏中为笔记本显示该模块的用途和功能。如果我转到其他模块的文档页面,我不希望看到前面提到的笔记本的链接。
基本上我希望能够首先编辑侧边栏,并添加指向特定外部页面的链接。我也不想在模板中进行任何疯狂的切换,以显示基于页面的不同内容,因为我的代码库相当大,并且控制的开关很难看并且很难写(如果可能的话) )。
答案 0 :(得分:0)
您可以在专用的container中添加每个页面开头或结尾的链接,设置一个类属性并调整Sphinx模板的样式,这样它就会将具有此类属性的div渲染为你的侧边栏。
这是第一个例子:
My specific module
=================
lorem ipsum...
.. container:: side-bar-link
https://www.link1ToMySpecificModule.com
https://www.link2ToMySpecificModule.com
然后,将类side-bar-link
的样式添加到模板的CSS:
.side-bar-link {
...
}
确切的样式取决于您的模板,但您可能希望指定绝对位置。