在reStructuredText中将链接插入粗体文本

Zey*_*Fan 18 restructuredtext docutils

我尝试在reStructuredText中插入粗体文本的链接但是失败了.

这是我的第一个来源:

**Lorem ipsum dolor sit amet, `consectetur <http://www.example.com>`_ 
adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore 
magna aliqua.**
Run Code Online (Sandbox Code Playgroud)

但我得到了:

<strong>Lorem ipsum dolor sit amet, `consectetur <http://www.example.com>`_ 
adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua.</strong>
Run Code Online (Sandbox Code Playgroud)

我想得到这个:

<strong>Lorem ipsum dolor sit amet, <a href="http://www.example.com">consectetur</a> 
adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua.</strong>
Run Code Online (Sandbox Code Playgroud)

Chr*_*ris 20

目前看来这是不可能的:请参阅Docutils FAQ,特别是"嵌套内联标记可能"的问题.答案基本上表明嵌套内联标记位于待办事项列表中,因此最终可以在问题中执行您所要求的操作,并提供一些解决方法(他们声明不建议这样做).

由于暂时不建议使用变通办法,因此您可以执行以下操作:

**Lorem ipsum dolor sit amet,** `consectetur <http://www.example.com>`_ 
**adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore 
magna aliqua.**
Run Code Online (Sandbox Code Playgroud)

当然,您的链接不会是粗体,但至少它将是一个有效的链接.


Voy*_*Voy 6

不完全是您要求的 HTML,但它在完全粗体文本内创建了一个链接:

.. _consectetur: http://www.example.com
.. |consectetur| replace:: **consectetur** 

**Lorem ipsum dolor sit amet,** |consectetur|_
**dolor elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.**
Run Code Online (Sandbox Code Playgroud)

将产生:

<strong>Lorem ipsum dolor sit amet,</strong>
<a href="http://www.example.com"><strong>consectetur</strong></a>
<strong>dolor elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</strong>
Run Code Online (Sandbox Code Playgroud)


Enr*_*gre 5

如果适用,另一个解决方法是将整个段落标记为粗体.

.. class:: bold

Lorem ipsum dolor sit amet, `consectetur <http://www.example.com>`_ 
adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore 
magna aliqua.
Run Code Online (Sandbox Code Playgroud)

  • 似乎不起作用:https://gist.github.com/carbolymer/e8e2f5351aa7c0bf8c2130db72cc5e3b (2认同)