Le code de cette page n'a pas démarré.

Ouvrir index.html directement depuis un dossier bloque les modules JavaScript, si bien que rien ne se passera au moment de choisir un fichier. Servez plutôt le dossier en http :

powershell -ExecutionPolicy Bypass -File serve.ps1

Ouvrez ensuite http://localhost:8080/.

YAML vers JSON — et JSON de nouveau en YAML

Les deux sens, et il dit ce que chacun coûte. Rien de tout cela n'est collé dans le serveur de quelqu'un d'autre.

Langue: Français
Voir le code
Vos fichiers YAML et JSON sont traités dans votre navigateur. Aucun envoi pour traitement.

Convertir, c'est de l'arithmétique sur une chaîne de caractères, faite ici, dans cette page. Les deux analyseurs sont écrits à la main et se trouvent dans src/ — shared/parse-yaml.js et shared/parse-json.js — et il n'y a rien d'autre. Cet outil n'a aucune fonction réseau d'aucune sorte — rien à récupérer, rien à envoyer — et cela compte ici plus que presque partout ailleurs sur ce site : un fichier YAML est le plus souvent une configuration de déploiement, et une configuration de déploiement est le plus souvent pleine de noms d'hôtes, de noms de buckets et de secrets.

Vérification en direct : vérification…

Hors ligne : vérification…

Inutile de nous croire sur parole : ouvrez les DevTools, regardez l'onglet réseau et convertissez quelque chose. Pas une requête ne transporte un caractère de ce que vous avez collé. Ou débranchez internet et convertissez-le quand même.

1 Choisissez le sens

Indentation La tabulation n'est proposée que pour le JSON. Le YAML est défini en termes d'espaces et une tabulation n'y est pas une indentation légale.

Trier les clés de chaque objet Selon la façon dont les clés se lisent plutôt que selon leurs points de code, si bien que item2 vient avant item10.

2 Collez-le

vide

3 Emportez le résultat

Rien pour l'instant.

 

Voir en Markdown

Comment convertir du YAML en JSON sans l'envoyer

  1. Choisissez le sens.YAML vers JSON ou JSON vers YAML. La note sous le menu dit ce que ce sens perd avant que vous ne colliez quoi que ce soit, et non après.
  2. Collez-le, ou déposez le fichier.Tout ce que vous pouvez sélectionner et copier convient. Un fichier déposé sur le sélecteur est lu par votre propre navigateur et placé dans la boîte — il n'y a pas d'étape d'envoi à omettre — et une extension .json ou .yaml choisit le sens pour vous.
  3. Choisissez l'indentation.Deux espaces, quatre, ou une tabulation. La tabulation n'est proposée que pour le JSON : le YAML est défini en termes d'espaces, et une tabulation n'y est pas une indentation légale.
  4. Lisez l'erreur là où elle est.Un analyseur qui échoue ici dit ce qu'il a trouvé et à quelle ligne et quelle colonne, plutôt que « jeton inattendu à la position 4193 ». Cela suffit d'ordinaire à réparer un fichier de configuration sans rien ouvrir d'autre.
  5. Emportez le résultat.Copiez-le, ou téléchargez-le sous forme de fichier, nommé d'après le format dans lequel il est sorti.

La version longue

Comment convertir entre YAML et JSON Convertissez un sous-ensemble YAML en JSON ou inversement dans le navigateur. Vérifiez commentaires perdus, constructions refusées et texte numérique avant réutilisation.

Questions

Mon YAML est-il envoyé quelque part ?

Non. Les deux analyseurs et les deux imprimeurs de cette page sont des fonctions qui tournent dans votre propre navigateur, sur votre propre matériel. Cet outil n'a aucune fonction réseau d'aucune sorte — il ne récupère jamais rien et n'envoie jamais rien — et la Content-Security-Policy de la page nomme chaque adresse qu'elle peut contacter, dont aucune ne nous appartient. C'est précisément la raison de l'utiliser pour une configuration de déploiement : elles sont pleines de noms d'hôtes, de noms de buckets et parfois d'un secret que quelqu'un comptait déplacer, et en coller une dans le convertisseur de quelqu'un d'autre, c'est la lui donner.

Que perd-on en convertissant du YAML en JSON ?

JSON supprime les commentaires. Ce parseur prend volontairement en charge un sous-ensemble de YAML 1.2 et refuse ancres, alias et balises plutôt que de choisir leur expansion ou conversion de type. JSON représente un arbre de valeurs ; YAML accepte des nœuds partagés et des valeurs typées. Les flux de documents multiples sont refusés plutôt qu’enveloppés dans un tableau inventé. JSON vers YAML conserve les valeurs représentées. La spécification YAML définit le format complet.

Mon YAML dit no et le JSON est sorti en chaîne. Pourquoi ?

YAML 1.1 lisait yes, no, on et off comme des booléens, transformant le code de la Norvège en false. Ce sous-ensemble utilise YAML 1.2 : ces mots restent des chaînes, true et false sont des booléens, null et ~ sont null et les scalaires numériques sont des nombres. L’écriture YAML met les mots ambigus entre guillemets pour les lecteurs aux anciennes règles.

Garde-t-il l'ordre de mes clés ?

Oui, dans les deux sens, et c'est plus difficile qu'il n'y paraît. Un convertisseur bâti sur JSON.parse ramène discrètement en tête les clés qui ressemblent à des entiers, si bien que {"10":a,"2":b} revient en {"2":b,"10":a}. Les nombres gardent les chiffres que vous avez tapés, donc un identifiant de compte à vingt chiffres ne perd pas ses trois derniers au profit d'un double. Si vous voulez les trier, il y a une case pour cela, et elle trie selon la façon dont les clés se lisent plutôt que selon leurs points de code.

Peut-il convertir plusieurs documents YAML à la fois ?

Non, et il le dit plutôt que d'en choisir un. Un fichier avec des séparateurs --- contient plus d'un document, et le JSON n'a aucune forme qui veuille dire « plusieurs documents » — un tableau serait une affirmation que le fichier n'a jamais faite. Convertissez-les un par un.

Pourquoi n'y a-t-il pas de formateur YAML ici ?

Parce que le YAML n'a pas de forme compactée qui vaille la peine d'être écrite — la courte est le style de flux, qui est illisible, et l'illisible est le contraire de la raison de garder un fichier en YAML. Mettre en forme du JSON, du XML, du HTML et du CSS est le travail du formateur JSON, et il met aussi le YAML en forme.

Quelle taille de fichier peut-il traiter ?

Aucune limite n'est inscrite ici, parce qu'aucun serveur ne la paie. Le plafond réel est votre propre machine : quelques mégaoctets de YAML passent bien, et pour un document très long la page attend une pause dans votre frappe avant de convertir, plutôt que de vous disputer le clavier.

Est-ce gratuit, et faut-il un compte ?

C'est gratuit, et il n'y a ni compte, ni identification, ni période d'essai, ni limite à ce que vous collez. Le site affiche de la publicité, et c'est elle qui le finance ; les annonces ne reçoivent rien sur votre texte.

Est-ce que cela fonctionne hors ligne ?

Oui. Chargez la page une fois, puis débranchez internet et elle continue de fonctionner. C'est aussi la façon la plus simple de prouver que rien n'est envoyé : un outil qui expédierait votre configuration pour la convertir s'arrêterait à l'instant où vous débranchez.