Doctree-Knotenklassen, die von Sphinx hinzugefügt wurden

Knoten für domänenspezifische Objektbeschreibungen

Top-Level-Knoten

Diese Knoten bilden die obersten Ebenen von Objektbeschreibungen.

class sphinx.addnodes.desc(rawsource: str = '', *children, **attributes: Any)[Quelle]

Knoten für eine Liste von ObjektSignaturen und eine gemeinsame Beschreibung davon.

Enthält einen oder mehrere desc_signature-Knoten und dann einen einzelnen desc_content-Knoten.

Dieser Knoten hat immer zwei Klassen

  • Der Name der Domäne, zu der er gehört, z. B. py oder cpp.

  • Der Name des Objekttyps in der Domäne, z. B. function.

class sphinx.addnodes.desc_signature(*args: Any, **kwargs: Any)[Quelle]

Knoten für eine einzelne ObjektSignatur.

Standardmäßig ist die Signatur eine einzeilige Signatur. Setzen Sie is_multiline = True, um eine mehrzeilige Signatur zu beschreiben. In diesem Fall müssen alle Kindknoten desc_signature_line-Knoten sein.

Dieser Knoten hat immer die Klassen sig, sig-object und die Domäne, zu der er gehört.

class sphinx.addnodes.desc_signature_line(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für eine Zeile in einer mehrzeiligen ObjektSignatur.

Er sollte nur als Kind eines desc_signature-Knotens mit is_multiline auf True gesetzt verwendet werden. Setzen Sie add_permalink = True für die Zeile, die den Permalink erhalten soll.

class sphinx.addnodes.desc_content(rawsource: str = '', *children, **attributes: Any)[Quelle]

Knoten für Objektbeschreibungsinhalt.

Muss der letzte Kindknoten in einem desc-Knoten sein.

class sphinx.addnodes.desc_inline(domain: str, *args: Any, **kwargs: Any)[Quelle]

Knoten für ein Signaturfragment in Inline-Text.

Dies wird z. B. für Rollen wie cpp:expr verwendet.

Dieser Knoten hat immer die Klassen sig, sig-inline und den Namen der Domäne, zu der er gehört.

Knoten für die übergeordnete Struktur in Signaturen

Diese Knoten kommen in nicht-mehrzeiligen desc_signature-Knoten und in desc_signature_line-Knoten vor.

class sphinx.addnodes.desc_name(*args: Any, **kwargs: Any)[Quelle]

Knoten für den Hauptobjektnamen.

Zum Beispiel ist bei der Deklaration einer Python-Klasse MyModule.MyClass der Hauptname MyClass.

Dieser Knoten hat immer die Klasse sig-name.

class sphinx.addnodes.desc_addname(*args: Any, **kwargs: Any)[Quelle]

Knoten für zusätzliche Namensbestandteile eines Objekts.

Zum Beispiel ist bei der Deklaration einer Python-Klasse MyModule.MyClass der zusätzliche Namensbestandteil MyModule..

Dieser Knoten hat immer die Klasse sig-prename.

class sphinx.addnodes.desc_type(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für Rückgabetypen oder Objekttypnamen.

class sphinx.addnodes.desc_returns(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für eine „returns“-Annotation (wie -> in Python).

class sphinx.addnodes.desc_parameterlist(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für eine allgemeine Parameterliste.

Standardmäßig wird die Parameterliste auf derselben Zeile wie der Rest der Signatur geschrieben. Setzen Sie multi_line_parameter_list = True, um eine mehrzeilige Parameterliste zu beschreiben. In diesem Fall wird jeder Parameter auf einer eigenen, eingerückten Zeile geschrieben. Ein abschließendes Komma wird in der letzten Zeile hinzugefügt, wenn multi_line_trailing_comma True ist.

class sphinx.addnodes.desc_parameter(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für einen einzelnen Parameter.

class sphinx.addnodes.desc_optional(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten zur Markierung optionaler Teile der Parameterliste.

class sphinx.addnodes.desc_annotation(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für Signatur-Annotationen (nicht für Python 3-Annotationen).

Knoten für Signaturtext-Elemente

Diese Knoten erben von desc_sig_element und werden im Allgemeinen von SigElementFallbackTransform in docutils.nodes.inline übersetzt.

Erweiterungen können zusätzliche desc_sig_*-ähnliche Knoten erstellen, aber damit SigElementFallbackTransform sie automatisch in Inline-Knoten übersetzt, müssen sie über das Schlüsselwortargument _sig_element=True von desc_sig_element zu SIG_ELEMENTS hinzugefügt werden, z. B.

class desc_custom_sig_node(desc_sig_element, _sig_element=True): ...

Aus Kompatibilitätsgründen ist es immer noch möglich, die Knoten direkt über SIG_ELEMENTS.add(desc_custom_sig_node) hinzuzufügen.

sphinx.addnodes.SIG_ELEMENTS: set[type[desc_sig_element]]

Eine Menge von Klassen, die von desc_sig_element erben. Jede Knotenkasse wird voraussichtlich von der Übersetzerklasse des Builders behandelt, wenn letztere nicht von SphinxTranslator erbt.

Diese Menge kann manuell von Drittanbieter-Erweiterungen oder durch Ableiten von desc_sig_element und unter Verwendung des Schlüsselwortarguments _sig_element=True erweitert werden.

class sphinx.addnodes.desc_sig_element(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Gemeinsame Elternklasse von Knoten für Inline-Text einer Signatur.

class sphinx.addnodes.desc_sig_space(rawsource: str = '', text: str = ' ', *children: Element, **attributes: Any)[Quelle]

Knoten für ein Leerzeichen in einer Signatur.

class sphinx.addnodes.desc_sig_name(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Knoten für einen Bezeichner in einer Signatur.

class sphinx.addnodes.desc_sig_operator(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Knoten für einen Operator in einer Signatur.

class sphinx.addnodes.desc_sig_punctuation(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Knoten für Satzzeichen in einer Signatur.

class sphinx.addnodes.desc_sig_keyword(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Knoten für ein allgemeines Schlüsselwort in einer Signatur.

class sphinx.addnodes.desc_sig_keyword_type(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Knoten für ein Schlüsselwort, das ein integrierter Typ in einer Signatur ist.

class sphinx.addnodes.desc_sig_literal_number(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Knoten für eine numerische Literal in einer Signatur.

class sphinx.addnodes.desc_sig_literal_string(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Knoten für ein String-Literal in einer Signatur.

class sphinx.addnodes.desc_sig_literal_char(rawsource: str = '', text: str = '', *children: Element, **attributes: Any)[Quelle]

Knoten für ein Zeichenliteral in einer Signatur.

Neue Admonition-ähnliche Konstrukte

class sphinx.addnodes.versionmodified(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für Versionsänderungseinträge.

Wird derzeit für die Direktiven „version-added“, „version-changed“, „version-deprecated“ und „version-removed“ sowie deren Aliase verwendet.

class sphinx.addnodes.seealso(rawsource: str = '', *children, **attributes: Any)[Quelle]

Benutzerdefinierte „siehe auch“-Admonition.

Andere Absatz-Knoten

class sphinx.addnodes.compact_paragraph(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für einen kompakten Absatz (der niemals einen <p>-Knoten erzeugt).

Neue Inline-Knoten

class sphinx.addnodes.index(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für Indexeinträge.

Dieser Knoten wird von der Direktive index erstellt und hat ein Attribut entries. Sein Wert ist eine Liste von 5-Tupeln von (entrytype, entryname, target, ignored, key).

entrytype ist einer von „single“, „pair“, „double“, „triple“.

key sind Kategorisierungszeichen (normalerweise ein einzelnes Zeichen) für die allgemeine Indexseite. Für weitere Details siehe auch: glossary und https://github.com/sphinx-doc/sphinx/pull/2320.

class sphinx.addnodes.pending_xref(rawsource: str = '', *children, **attributes: Any)[Quelle]

Knoten für Querverweise, die nicht ohne vollständige Informationen über alle Dokumente aufgelöst werden können.

Diese Knoten werden vor dem Schreiben der Ausgabe in BuildEnvironment.resolve_references aufgelöst.

class sphinx.addnodes.pending_xref_condition(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten, der eine mögliche Methode zur Erstellung eines Querverweises und die Bedingung, unter der diese Methode verwendet werden sollte, darstellt.

Dieser Knoten darf nur unter einem pending_xref-Knoten platziert werden. Ein pending_xref-Knoten muss entweder keine pending_xref_condition-Knoten enthalten oder er darf nur pending_xref_condition-Knoten enthalten.

Der Querverweis-Resolver ersetzt einen pending_xref, der pending_xref_condition-Knoten enthält, durch den Inhalt von genau einem dieser pending_xref_condition-Knoten. Er verwendet das Attribut condition, um zu entscheiden, welcher Inhalt des pending_xref_condition-Knotens verwendet werden soll. Betrachten wir beispielsweise, wie der Querverweis-Resolver auf

<pending_xref refdomain="py" reftarget="io.StringIO ...>
    <pending_xref_condition condition="resolved">
        <literal>
            StringIO
    <pending_xref_condition condition="*">
        <literal>
            io.StringIO

Wenn der Querverweis-Resolver den Querverweis erfolgreich auflöst, schreibt er pending_xref um als

<reference>
    <literal>
        StringIO

Andernfalls, wenn die Querverweisauflösung fehlschlägt, schreibt er pending_xref um als

<reference>
    <literal>
        io.StringIO

Der pending_xref_condition-Knoten sollte ein condition-Attribut haben. Domänen können ihre individuellen Bedingungen in das Attribut speichern, um Inhalte während der Auflösungsphase zu filtern. Als reservierter Bedingungsname wird condition="*" für den Fall eines Auflösungsfehlers verwendet. Zusätzlich stellt als empfohlener Bedingungsname condition="resolved" einen erfolgreichen Abschluss der Auflösung im Intersphinx-Modul dar.

Hinzugefügt in Version 4.0.

class sphinx.addnodes.literal_emphasis(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten, der sich wie emphasis verhält, aber weitere Textverarbeitungen werden nicht angewendet (z. B. Smartypants für HTML-Ausgabe).

class sphinx.addnodes.download_reference(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für Download-Referenzen, ähnlich wie pending_xref.

Spezielle Knoten

class sphinx.addnodes.only(rawsource: str = '', *children, **attributes: Any)[Quelle]

Knoten für „only“-Direktiven (bedingte Einbindung basierend auf Tags).

class sphinx.addnodes.highlightlang(rawsource: str = '', *children, **attributes: Any)[Quelle]

Wird eingefügt, um die Hervorhebungssprache und die Optionen für Zeilennummern für nachfolgende Codeblöcke festzulegen.

Sie sollten die folgenden Knoten nicht in Erweiterungen erstellen müssen.

class sphinx.addnodes.glossary(rawsource: str = '', *children, **attributes: Any)[Quelle]

Knoten zum Einfügen eines Glossars.

class sphinx.addnodes.toctree(rawsource: str = '', *children, **attributes: Any)[Quelle]

Knoten zum Einfügen eines „TOC-Baums“.

class sphinx.addnodes.start_of_file(rawsource: str = '', *children, **attributes: Any)[Quelle]

Knoten zur Markierung des Beginns einer neuen Datei, nur im LaTeX-Builder verwendet.

class sphinx.addnodes.productionlist(rawsource: str = '', *children, **attributes: Any)[Quelle]

Knoten für Grammatikproduktionslisten.

Enthält production-Knoten.

class sphinx.addnodes.production(rawsource: str = '', text: str = '', *children, **attributes: Any)[Quelle]

Knoten für eine einzelne Grammatikproduktionsregel.