YAML-anker-uitbreid
YAML-ankers, aliassen en merge-keys vervangen door hun volledige inhoud.
YAML-anker-uitbreid
Plak een YAML-document dat ankers (&name), aliassen (*name) of merge-keys (<<:) gebruikt, en deze tool vervangt elke verwijzing door de volledige inhoud waar het naar verwijst. Het resultaat is puur, zelfstandig YAML zonder ankers, aliassen of merge-keys — handig als u een configuratiebestand aan een hulpprogramma moet overhandigen dat YAML's hergebruikssyntaxis niet begrijpt, of als u gewoon wilt zien hoe een bestand met veel ankers werkelijk uitbreidt.
Merge-keys worden opgelost met dezelfde prioriteit als YAML zelf gebruikt: een sleutel die expliciet in een mapping is geschreven, wint altijd van een sleutel die via een merge wordt ingetrokken. Wanneer een mapping meer dan één bron samenvoegt (<<: [*a, *b]), wint de eerdere bron bij een botsing. Gekoppelde merges — een mapping die een ander mapping samenvoegt dat zelf een derde samenvoegt — worden helemaal naar beneden gevolgd. Meerdere documenten in één invoer, gescheiden door ---, worden elk onafhankelijk uitgebreid en opnieuw samengevoegd met dezelfde scheidingsteken.
De opties bepalen de vorm van de uitvoer, niet wat wordt uitgebreid. »Sleutelvolgorde behouden« behoudt sleutels in hun oorspronkelijke volgorde; uitschakelen sorteert de sleutels van elk mapping alfabetisch. »String-stijl« kan elke stringwaarde forceren naar dubbele of enkele aanhalingstekens, zonder cijfers, boolese waarden of nulls aan te raken. »Ongebruikte ankers verwijderen« verwijdert een top-level sleutel die alleen bestaat om een anker te definiëren dat niemand ooit referenceert — dood steigerbouw dat zich in handgeschreven YAML in de loop der tijd ophoopt. »Markeringsmodus« vervangt de uitgebreide YAML door een kort rapport met elk anker, waar het is gedefinieerd, en elke regel die het via een alias of merge gebruikt — handig om een bestand te begrijpen voordat u het plat maakt. Een document met een echte circulaire verwijzing (een anker dat naar zichzelf verwijst) wordt als fout gerapporteerd in plaats van uitgebreid, omdat er geen eindige YAML is die dit vertegenwoordigt.
Alles wordt lokaal in uw browser uitgevoerd — uw YAML wordt nooit geüpload of naar een server verzonden, wat belangrijk is omdat ankers en merge-keys gebruikelijk zijn in bestanden met omgevingsconfiguraties, CI-pijplijnen of Kubernetes-manifesten. Kopieer het resultaat, download het als .txt-bestand, of stuur het rechtstreeks naar een ander hulpprogramma zoals YAML naar JSON.