这似乎工作:
.. raw:: latex
\href{git://github.com}{GitHub}
.. raw:: html
<a href="git://github.com">GitHub</a>
编辑:我看着斯芬克斯的源代码和警告消息在文件斯芬克斯产生/写入器/ latex.py在visit_reference方法,其被定义如下:
def visit_reference(self, node):
uri = node.get('refuri', '')
# ...
elif uri.startswith('mailto:') or uri.startswith('http:') or \
uri.startswith('https:') or uri.startswith('ftp:'):
self.body.append('\\href{%s}{' % self.encode_uri(uri))
else:
self.builder.warn('unusable reference target found: %s' % uri,
(self.curfilestack[-1], node.line))
self.context.append('')
所以协议进行硬编码,因此我认为这是不使用原始数据或改变狮身人面像源,以“未知”环节的工作没有任何选项或简单的方法。
我添加了一行对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))
现在“使latexpdf”和“使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
谢谢。我想要一个适用于HTML和PDF文档的解决方案 –
请参阅我的编辑。我知道这不是很美,但我找不到一个更好的方法来使它工作。 :) – eminor
谢谢,但我无法同时为HTML和PDF做这项工作。 –