Hai un file di configurazione in YAML e uno script che legge solo JSON. Incolla il testo a sinistra, leggi il risultato a destra, copialo. Per convertire da YAML a JSON servono pochi secondi, e la stessa pagina fa anche la strada inversa.
Come legge il YAML il convertitore
Lo strumento segue YAML 1.2. Qui yes, no, on e off sono semplici stringhe, non booleani, e una data come 2001-12-14 resta una stringa. I numeri ottali vogliono il prefisso 0o: 0o17 vale 15, mentre 017 vale 17.
Ancore (&nome), alias (*nome) e chiavi di fusione (<<: *nome) vengono risolti: nel JSON trovi i valori già copiati. I commenti non esistono in JSON e vanno persi.
Più documenti nello stesso file
Se --- separa più documenti, esce un array JSON con una voce per documento, e la riga delle statistiche dice quanti ne ha trovati ("3 documenti"). Con un solo documento resta un oggetto o una lista semplice. I documenti vuoti in fondo vengono ignorati.
Convertire una configurazione, passo per passo
- Scegli la direzione con i pulsanti "YAML → JSON" o "JSON → YAML". Ognuno mostra un esempio finché non scrivi il tuo testo.
- Incolla il testo. La conversione parte 300 millisecondi dopo l’ultimo tasto. Alla prima esecuzione viene caricata la libreria YAML e serve un attimo.
- Imposta le opzioni: rientro del JSON a 2 spazi, 4 spazi o minificato, e "Ordina le chiavi in ordine alfabetico". Per l’output YAML scegli anche il rientro e se le righe lunghe vanno a capo a 80 caratteri.
- Premi "Copia" o "Scarica". Il file si chiama
converted.jsonoppureconverted.yaml.
Stringhe che sembrano numeri, booleani o null
Da JSON a YAML c’è una trappola: la stringa "123" non deve diventare il numero 123, quindi viene scritta tra virgolette. Lo stesso vale per "null", "true", "~" e la stringa vuota. Hanno le virgolette anche "yes", "no", "on", "off" e tutto ciò che inizia come una data, perché i parser YAML 1.1 li leggono come booleani o timestamp. Le stringhe con a capo diventano blocchi con |.
Errori, note e valori che JSON non può contenere
Con un YAML rotto compare il messaggio della libreria con riga e colonna, per esempio per una tabulazione usata come rientro. Due chiavi uguali in una mappa sono un errore, non una sovrascrittura silenziosa; vale anche per un alias senza ancora sopra di sé. Un tag sconosciuto come !custom è solo una nota e il valore resta testo.
YAML ammette .nan, .inf e -.inf, JSON no. Lo strumento scrive null e indica quanti valori ha sostituito. Gli interi oltre 2^53 vengono arrotondati al numero più vicino che JavaScript sa memorizzare, con una nota. Se un testo JSON ripete una chiave, vale l’ultima. Un input oltre i 2.000.000 di caratteri viene rifiutato con un messaggio.
Dove restano i tuoi dati
Non viene caricato nulla. La libreria YAML è uno script di questo sito che il browser scarica una volta, alla prima conversione. Poi tutto avviene nella scheda. "Copia" usa gli appunti, "Scarica" salva un file dal browser. Nel pannello di rete non compare nessuna richiesta con il tuo testo.