91

这是我想做的事情:

1. `link <http://www.google.com>`__
2. `link <http://www.yahoo.com>`__

要获得:

<ol>
<li><a href="http://www.google.com">link</a></li>
<li><a href="http://www.yahoo.com">link</a></li>
</ol>

上下文是一个出版物列表,我希望它们在最后都有一个标记为“DOI”的链接。

但是,这似乎失败了:

<string>:3: (WARNING/2) Duplicate explicit target name: "doi".

确切的错误似乎取决于我使用的 docutils 版本,但它们都失败了。

有没有办法在重组文本中生成具有相同文本的多个链接?

4

3 回答 3

151

警告

(警告/2)重复明确的目标名称:foo

当您对“命名超链接引用”中的两个不同链接使用相同的文本时会发生:

`Foo <http://example.org>`_
`Foo <http://example.com>`_

为了规避它,请使用带有双下划线的匿名 超链接引用:

`Foo <http://example.org>`__
`Foo <http://example.com>`__

这在 docutils 0.8.1 上没有警告。

于 2012-12-28T09:59:28.713 回答
16

我想你会想要使用匿名超链接:

1. `link`__
2. `link`__

__ http://www.google.com
__ http://www.yahoo.com

请记住,在文档中引用它们的顺序很重要。更多信息可以在这里找到。

于 2011-03-28T21:32:35.447 回答
4

好像你需要一个换行符和两个下划线。

这就是我所做的:

What is that Process object good for? `(html)
<process.html>`__
`(html) 
<other.process.rst>`__

获得:

What is that Process object good for? 
<a class="reference external" href="process.html">(html)</a>
<a class="reference external" href="process.rst">(html)</a>
于 2012-08-01T20:25:01.297 回答