Formatieren von Text in einem Link in reStructuredText
-
13-10-2019 - |
Frage
Wie forma Sie Text innerhalb eines bezeichneten Link in reStructuredText?
Insbesondere mag ich den folgenden HTML-Code aus meinem ersten generieren:
<a href="http://docs.python.org/library/optparse.html"><tt>optparse.OptionParser</tt> documentation documentation</a>
Das Ergebnis sollte wie folgt aussehen:
, wo der "optparse.OptionParser" -Teil ist in Schrift mit fester Breite.
Ich habe versucht,
```optparse.OptionParser`` <http://docs.python.org/library/optparse.html>`_
aber das gab
<tt class="docutils literal">`optparse.OptionParser</tt> documentation <<a class="reference external" href="http://docs.python.org/library/optparse.html">http://docs.python.org/library/optparse.html</a>>`_
welche wie folgt aussieht
`` optparse.OptionParser
documentation <http://docs.python.org/library/optparse.html>\
_
Lösung
Dieses Konstrukt:
Here you have |optparse.OptionParser|_.
.. |optparse.OptionParser| replace:: ``optparse.OptionParser`` documentation
.. _optparse.OptionParser: http://docs.python.org/library/optparse.html
erzeugt HTML (einige Zeilenumbrüche hinzugefügt):
<p>Here you have
<a class="reference external" href="http://docs.python.org/library/optparse.html">
<tt class="docutils literal"><span class="pre">optparse.OptionParser</span></tt> documentation</a>.
</p>
Ich weiß, dass dies nicht genau , was Sie fragt aber vielleicht ist es nahe genug. Siehe auch http://docutils.sourceforge.net/FAQ.html # wird geschachtelten-Inline-Markup-möglich .
Andere Tipps
Haben Sie versucht intersphinx ? Mit Hilfe dieser Erweiterung, die folgende Markup:
:py:class:`optparse.OptionParser`
erzeugt HTML:
<a class="reference external" href="http://docs.python.org/2.6/library/optparse.html#optparse.OptionParser" title="(in Python v2.6)"><tt class="xref py py-class docutils literal"><span class="pre">optparse.OptionParser</span></tt></a>
Getestet mit Python 2.6 und Sphinx 1.0.5.
Unter der gleichen FAQ-Seite von mzjn verwiesen:
The "raw" directive can be used to insert raw HTML into HTML output:
Here is some |stuff|.
.. |stuff| raw:: html
<em>emphasized text containing a
<a href="http://example.org">hyperlink</a> and
<tt>inline literals</tt></em>
Es sollte theoretisch möglich sein, mit komplizierten Dinge zu tun, dass das kann nicht mit RST durchgeführt werden.
Wenn Sie möchten, um im Wesentlichen zu tun bekommen HTML / CSS-Äquivalent von
<span class="red">This is red text</span>
in reStructuredText Sphinx verwenden, können Sie dies tun, indem eine Rolle zu erstellen:
.. role:: red
Dann können Sie es wie folgt verwenden:
:red:`This is red text`
Es sollte über nur ein Häkchen `
am Ende der Leitung sein.
Sie, natürlich, haben
.red { color: red }
in der CSS-Datei.