Κύρια σημεία
- 01Μορφοποιεί YAML με συνεπή εσοχή χρησιμοποιώντας το js-yaml parser — την ίδια βιβλιοθήκη που χρησιμοποιείται στο Node.js build tooling.
- 02Επικυρώνει τη σύνταξη και αναφέρει ακριβείς αριθμούς γραμμών για σφάλματα.
- 03Μετατρέπει μεταξύ YAML και JSON και στις δύο κατευθύνσεις με σωστή διατήρηση τύπου.
- 04Τίποτα δεν φορτώνεται — ολόκληρη η λειτουργία τρέχει τοπικά στο πρόγραμμα περιήγησής σας.
Γιατί η μορφοποίηση YAML έχει σημασία για τα Config Files
Το YAML είναι η προεπιλεγμένη γλώσσα config για Kubernetes, GitHub Actions, Docker Compose, Helm charts και πολλά άλλα εργαλεία. Είναι επίσης διάσημα ευαίσθητο στην εσοχή — μια ενιαία mis-indented γραμμή μπορεί να παράγει ένα σιωπηλό type mismatch ή ένα hard parse error που εμποδίζει μια ανάπτυξη. Η κανονική μορφοποίηση κρατά τα αρχεία συνεπή και πιάνει τα προβλήματα πριν φτάσουν στο CI.
Η μετατροπή μεταξύ YAML και JSON είναι εξίσου χρήσιμη. Ορισμένα εργαλεία αποδέχονται μόνο JSON για API calls ή schema definitions, ενώ οι άνθρωποι γενικά προτιμούν YAML για long-lived config files. Το να μπορείς να κάνεις round-trip μεταξύ των δύο χωρίς να χάσεις τύπους δεδομένων — αριθμοί παραμένουν αριθμοί, booleans παραμένουν booleans — εξοικονομεί χρόνο και αποτρέπει λεπτά bugs.
Πώς να μορφοποιήσετε ή να μετατρέψετε YAML
- 01
Επικολλήστε το YAML ή JSON σας
Επικολλήστε ένα Kubernetes manifest, ένα GitHub Actions workflow, ένα Helm values file ή οποιοδήποτε άλλο YAML document. Για JSON-to-YAML μετατροπή, επικολλήστε JSON αντί.
- 02
Επιλέξτε μια ενέργεια
Επιλέξτε Format YAML για κανονικοποίηση εσοχής και καθάρισμα του document στη θέση. Επιλέξτε YAML to JSON ή JSON to YAML για μετατροπή της μορφής εντελώς.
- 03
Ελέγξτε τα σφάλματα αν υπάρχουν
Αν η είσοδος έχει σφάλμα σύνταξης, το εργαλείο εμφανίζει τον ακριβή αριθμό γραμμής και λόγο από το js-yaml parser — το ίδιο parser που χρησιμοποιεί το Node.js tooling σας, έτσι το σφάλμα ταιριάζει με αυτό που θα δούσατε στην παραγωγή.
- 04
Αντιγράψτε το output
Κάντε κλικ Copy για να πάρετε το μορφοποιημένο ή converted output. Επικολλήστε το πίσω στο config file, ένα API body ή μια schema definition.
Πότε αυτό το εργαλείο σας εξοικονομεί χρόνο
- 01Kubernetes manifest έχει παρεκκλίνει — κανονικοποιήστε την εσοχή πριν το commit.
- 02GitHub Actions workflow αποτυγχάνει να αναλυθεί — επικυρώστε για να πάρετε την ακριβή γραμμή σφάλματος.
- 03Το API αποδέχεται μόνο JSON αλλά το config αποθηκεύεται ως YAML — μετατρέψτε με ένα κλικ.
- 04Onboarding μιας νέας υπηρεσίας — μετατρέψτε το JSON παράδειγμα payload σε YAML για το Helm chart.
- 05Αντιγραφή YAML από Stack Overflow — μορφοποιήστε ξανά για να ταιριάσει με το 2-space style του project σας.
- 06Debugging μιας Helm values merge — επικυρώστε ότι κάθε values.yaml είναι μεμονωμένα καθαρά.
Ιδιωτικό, Κανένα Upload που απαιτείται
Η μορφοποίηση και η μετατροπή τρέχουν εντελώς στο πρόγραμμα περιήγησής σας χρησιμοποιώντας js-yaml — την ίδια βιβλιοθήκη που έχει δεσμευτεί στο Webpack, Rollup και στα περισσότερα JavaScript build tools. Τα config files, τα secrets references και τα environment variable names σας δεν εγκαταλείπουν ποτέ τη συσκευή σας.
Ο parser στοχεύει YAML 1.2, το οποίο είναι αυτό που χρησιμοποιούν Kubernetes, GitHub Actions και Docker Compose. Αν ένα αρχείο επικυρώνει εδώ, θα φορτωθεί σωστά σε αυτά τα εργαλεία.
Συνήθεις ερωτήσεις YAML Formatter
Θα διατηρήσει η μορφοποίηση YAML τα σχόλια;
Όχι. Ο js-yaml parser αφαιρεί τα σχόλια κατά την αναλυτική — αυτή είναι περιορισμός όλων των JavaScript YAML parsers. Μορφοποιήστε πρώτα, στη συνέχεια προσθέστε τα σχόλια πίσω χειροκίνητα.
Ποια έκδοση YAML υποστηρίζει;
YAML 1.2, το οποίο είναι η έκδοση που χρησιμοποιούν Kubernetes, GitHub Actions, Docker Compose και Helm. Αυτό που επικυρώνει εδώ θα φορτώνει καθαρά σε αυτά τα εργαλεία.
Διατηρεί η μετατροπή από YAML σε JSON τους τύπους;
Ναι. Οι αριθμοί, booleans, null και date strings γίνονται σωστά round-trip. Ένα true σε YAML γίνεται ένα boolean true σε JSON, όχι το string 'true'.
Ποια είναι η διαφορά μεταξύ της μορφοποίησης και της μετατροπής;
Η μορφοποίηση κρατά το αρχείο ως YAML και κανονικοποιεί τα κενά και την εσοχή. Η μετατροπή αλλάζει εντελώς τη μορφή εξόδου — το YAML to JSON παράγει ένα .json-compatible document.
Το YAML μου έχει πολλαπλά documents που χωρίζονται από ---. Θα επεξεργαστούν όλα;
Το πρώτο document αναλύεται και αποδίδεται ξανά. Για multi-document files, διαχωρίστε κάθε τμήμα στο --- και επεξεργαστείτε τα ατομικά.