Sphinx PDF文档中指向外部git存储库的超链接

2024-04-19 21:53:51 发布

您现在位置:Python中文网/ 问答频道 /正文

表单中指向git存储库的外部超链接

.. _Git repo: git://github.com/migueldvb/repo.git

在HTML文档中正确显示,但不会显示在PDF文件中。运行python setup.py sphinx_build -b latex生成LaTeX文件时出现警告:

^{pr2}$

Sphinx生成的PDF文档中如何包含指向git存储库的超链接?在


Tags: 文件文档pygitgithubcom表单pdf
1条回答
网友
1楼 · 发布于 2024-04-19 21:53:51

这似乎有效:

.. raw:: latex

    \href{git://github.com}{GitHub}

.. raw:: html

    <a href="git://github.com">GitHub</a>

编辑:我查看了sphinx的源代码,并在sphinx/writers文件中生成了警告消息/乳胶.py在访问参考方法中,定义如下:

^{pr2}$

因此,协议是硬编码的,因此我认为没有任何选择或简单的方法不使用原始数据或改变斯芬克斯来源,使“未知”的链接工作。在

我在源代码中添加了一行git协议:

def visit_reference(self, node):
        uri = node.get('refuri', '')
        # ...
        elif uri.startswith('mailto:') or uri.startswith('http:') or \
                 uri.startswith('git:') or \
                 uri.startswith('https:') or uri.startswith('ftp:'):
            self.body.append('\\href{%s}{' % self.encode_uri(uri))

现在,“make latexpdf”和“make html”正在生成具有以下源的可用git链接的文档:

Test Link
=========

This is a paragraph that contains `a link`_.

.. _a link: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git

相关问题 更多 >