在sphinx jinja2模板中,获取当前文档的路径

问题描述 投票:0回答:2

我正在使用 Sphinx 和 rST 构建文档。这些文档已国际化并部署到如下路径:

website.tld/en/index.html
website.tld/de/index.html

现在,我想在每个页面上提供不同语言的同一页面的链接。当前语言可作为

language
变量使用,并且所有语言的列表都显式添加到
html_context
中,因此也可用。

我遇到的困难是每个文档的相对路径。假设,在

./source/somepath/docname.rst
处有一个源文档。它内置于这些:

website.tld/en/somepath/docname.html
website.tld/de/somepath/docname.html

在Jinja2模板中,如何获取

"somepath/docname.html"
值?

jinja2 python-sphinx
2个回答
1
投票

突然,我在相关问题的答案中找到了解决方案:

{{ pagename }}

对于

./source/somepath/docname.rst
处的源文档,
pagename
的值为
"somepath/docname"
,这正是我所需要的。

这是此变量的文档


0
投票

您可以使用

pagename
pathto
一起生成这样的 href

{{ pathto('../de/', 1) }}{{ pagename }}.html

如果您当前正在使用

website.tld/en/somepath/docname.html

这将扩展到

../../de/somepath/docname.html

© www.soinside.com 2019 - 2024. All rights reserved.