YAML-Anker-Expander
YAML-Anker, Aliase und Merge-Keys durch ihren vollständigen Inhalt ersetzen.
YAML-Anker-Expander
Geben Sie ein YAML-Dokument ein, das Anker (&name), Aliase (*name) oder Merge-Keys (<<:) nutzt, und dieses Tool ersetzt jede Referenz durch den vollständigen Inhalt, auf den sie verweist. Das Ergebnis ist reines, eigenständiges YAML ohne Anker, Aliase oder Merge-Keys — nützlich, wenn Sie eine Konfigurationsdatei an ein Tool übergeben müssen, das YAML's Wiederverwendungssyntax nicht versteht, oder wenn Sie einfach sehen möchten, wie sich eine Datei mit vielen Ankern wirklich ausbreitet.
Merge-Keys werden mit der gleichen Priorität aufgelöst, die YAML selbst verwendet: Ein Schlüssel, der explizit in einem Mapping geschrieben wird, hat immer Vorrang vor einem, das durch einen Merge eingezogen wird. Wenn ein Mapping mehrere Quellen zusammenführt (<<: [*a, *b]), gewinnt die frühere Quelle bei einer Kollision. Verkettete Merges — ein Mapping, das ein anderes Mapping zusammenführt, das selbst ein drittes zusammenführt — werden bis zum Ende verfolgt. Mehrere Dokumente in einer Eingabe, getrennt durch ---, werden jeweils unabhängig voneinander erweitert und mit dem gleichen Trennzeichen wieder zusammengefügt.
Die Optionen steuern die Form der Ausgabe, nicht, was erweitert wird. »Schlüsselreihenfolge beibehalten« behält die ursprüngliche Reihenfolge; deaktivieren Sie dies, um Schlüssel in jedem Mapping alphabetisch zu sortieren. »String-Format« kann jeden String-Wert mit doppelten oder einfachen Anführungszeichen erzwingen, ohne Zahlen, Boolesche Werte oder Nulls zu ändern. »Ungenutzte Anker entfernen« löscht einen Top-Level-Schlüssel, der nur existiert, um einen Anker zu definieren, den niemand referenziert — tote Gerüste, die sich in handgeschriebenen YAML-Dateien im Laufe der Zeit ansammeln. »Hervorhebungsmodus« tauscht die erweiterte YAML gegen einen kurzen Bericht aus, der jeden Anker, wo er definiert ist, und jede Zeile auflistet, die ihn über einen Alias oder einen Merge nutzt — praktisch, um eine Datei vor dem Flachdrücken zu verstehen.
Alles läuft lokal in Ihrem Browser ab — Ihre YAML wird niemals hochgeladen oder an einen Server gesendet, was wichtig ist, da Anker und Merge-Keys in Dateien häufig sind, die Umgebungskonfigurationen, CI-Pipelines oder Kubernetes-Manifeste enthalten. Kopieren Sie das Ergebnis, laden Sie es als .txt-Datei herunter, oder schicken Sie es direkt an ein anderes Tool wie YAML zu JSON.