Converti YAML in JSON e JSON in YAML, con la riga e la colonna esatte di ogni errore di sintassi.
YAML e JSON descrivono la stessa cosa — mappe, elenchi, stringhe, numeri, booleani e null — con priorità opposte. JSON usa parentesi graffe e virgolette, che piacciono alle macchine e che le persone sbagliano a digitare. YAML usa l'indentazione e quasi nessuna punteggiatura, cosa che piace alle persone finché uno spazio di troppo non cambia la forma del documento. Convertire dall'uno all'altro è lavoro di routine: leggere un manifest Kubernetes o un workflow di GitHub Actions come JSON perché uno script possa consumarlo, oppure riportare la risposta di un'API in YAML per un file di configurazione. Questo strumento va in entrambe le direzioni e rileva quale dei due hai incollato.
La conversione è la metà facile; è su ciò che succede quando lo YAML è rotto che questo strumento spende il suo impegno. Un errore di sintassi viene segnalato con riga e colonna contate come le conta un editor, con un estratto delle righe circostanti e un cursore sotto il carattere esatto che ha fermato il parser. La posizione non è sempre dove te l'aspetti. Una tabulazione usata per l'indentazione viene rifiutata proprio sulla tabulazione, e l'estratto la stampa come una freccia, così puoi vedere ciò che non si vede. Una virgoletta non chiusa viene segnalata alla fine del file, non sulla virgoletta di apertura, perché è lì che il parser ha esaurito il testo cercando quella di chiusura. Una chiave duplicata viene segnalata alla sua seconda occorrenza, e qui è un errore, non un avviso. Gli errori JSON ricevono lo stesso trattamento: i browser li formulano in modo diverso e alcuni riportano solo un offset di caratteri, quindi la riga e la colonna vengono calcolate qui e risultano identiche ovunque.
YAML può esprimere cose che JSON non può, e ognuna di queste viene segnalata invece di cambiare in silenzio i tuoi dati. Le ancore e gli alias vengono espansi, quindi un alias diventa una copia completa del valore ancorato, e te lo diciamo. Le merge key no: il parser lavora sullo schema JSON, che non le risolve, quindi una riga << sopravvive come chiave letterale con un avviso che ti invita a unire quei campi a mano. Un file che contiene più documenti separati da --- diventa un array JSON, un elemento per documento. I valori .inf e .nan escono come null, e gli interi enormi perdono le ultime cifre; entrambi vengono segnalati. Quello schema è anche una scelta di sicurezza: i tag come !!js/function vengono rifiutati come sconosciuti invece di essere istanziati. E niente di tutto questo viaggia — tutto gira sul tuo dispositivo.
No. Il testo viene analizzato e convertito da JavaScript sul tuo dispositivo — niente viene inviato da nessuna parte, memorizzato o registrato. Qui è importante: un manifest Kubernetes contiene hostname, porte, nomi di bucket e service account.
Indicano dove il parser si è arreso, contando da 1 come nel tuo editor, con il cursore sotto quel carattere. Un caso sorprende sempre: una virgoletta non chiusa viene segnalata alla fine del file, quindi torna indietro a cercare l'ultima virgoletta che hai aperto.
Sì. Ogni alias diventa una copia completa del valore ancorato nel JSON, e lo strumento te lo dice. Le merge key sono l'eccezione: non vengono risolte, il << sopravvive come chiave letterale e ricevi un avviso esplicito invece di un risultato sbagliato in silenzio.
Sì. JSON non ha il concetto di più documenti in un solo file, quindi ogni documento YAML diventa un elemento di un array JSON, nell'ordine originale, e un avviso indica quanti ne sono stati trovati.
Perché YAML 1.2 considera booleani solo true e false; yes, no, on e off restano stringhe. I vecchi parser 1.1 li convertivano — la stessa regola che trasforma il codice del paese NO in false. Metti tra virgolette un valore ogni volta che deve restare testo.
Vai.la trasforma qualsiasi URL in un link breve con statistiche dei clic, QR Code e il tuo biolink personale.
Vai.la non è responsabile dell'uso degli strumenti né delle decisioni prese in base ai loro risultati.