Kluczowe punkty
- 01Formatuje YAML ze spójnym wcięciem przy użyciu parsera js-yaml — tej samej biblioteki używanej w narzędziach budowania Node.js.
- 02Waliduje składnię i raportuje dokładne numery linii dla błędów.
- 03Konwertuje między YAML i JSON w obu kierunkach z prawidłowym zachowaniem typów.
- 04Nic nie jest przesyłane — cała operacja odbywa się lokalnie w przeglądarce.
Dlaczego formatowanie YAML jest ważne dla plików konfiguracyjnych
YAML jest domyślnym językiem konfiguracji dla Kubernetes, GitHub Actions, Docker Compose, Helm charts i wielu innych narzędzi. Jest również słynny z wrażliwości na wcięcia — pojedyncza źle wcięta linia może spowodować cichą niezgodność typów lub trudny błąd parsowania, który blokuje wdrożenie. Regularne formatowanie utrzymuje pliki spójne i wychwytuje problemy zanim trafią do CI.
Konwersja między YAML i JSON jest równie przydatna. Niektóre narzędzia akceptują tylko JSON dla wywołań API lub definicji schematów, podczas gdy ludzie generalnie preferują YAML dla długotrwałych plików konfiguracyjnych. Możliwość konwersji w obie strony bez utraty typów danych — liczby pozostają liczbami, wartości logiczne pozostają wartościami logicznymi — oszczędza czas i zapobiega subtelnym błędom.
Jak formatować lub konwertować YAML
- 01
Wklej swój YAML lub JSON
Wklej manifest Kubernetes, przepływ pracy GitHub Actions, plik wartości Helm lub dowolny inny dokument YAML. Aby konwertować JSON na YAML, wklej zamiast tego JSON.
- 02
Wybierz akcję
Wybierz Formatuj YAML, aby znormalizować wcięcia i oczyścić dokument na miejscu. Wybierz YAML na JSON lub JSON na YAML, aby całkowicie zmienić format.
- 03
Przejrzyj błędy, jeśli jakieś są
Jeśli wejście ma błąd składni, narzędzie wyświetla dokładny numer linii i przyczynę z parsera js-yaml — tego samego parsera, którego używa twoje narzędzie Node.js, więc błąd odpowiada temu, co widzisz w produkcji.
- 04
Skopiuj wynik
Kliknij Kopiuj, aby pobrać sformatowany lub przekonwertowany wynik. Wklej go z powrotem do pliku konfiguracyjnego, treści API lub definicji schematu.
Kiedy to narzędzie oszczędza Ci czas
- 01Manifest Kubernetes się zmienił — znormalizuj wcięcia przed zatwierdzeniem.
- 02Przepływ pracy GitHub Actions nie parsuje się — waliduj, aby uzyskać dokładny numer linii błędu.
- 03API akceptuje tylko JSON, ale konfiguracja jest przechowywana jako YAML — konwertuj jednym kliknięciem.
- 04Wdrażanie nowej usługi — konwertuj przykładowy ładunek JSON na YAML dla Helm chart.
- 05Kopiowanie YAML ze Stack Overflow — przeformatuj, aby pasował do stylu 2-spacji Twojego projektu.
- 06Debugowanie scalania wartości Helm — waliduj, że każdy values.yaml jest indywidualnie czysty.
Prywatne, bez wymaganego przesyłania
Formatowanie i konwersja działają całkowicie w przeglądarce przy użyciu js-yaml — tej samej biblioteki dołączonej do Webpack, Rollup i większości narzędzi budowania JavaScript. Twoje pliki konfiguracyjne, odwołania do sekretów i nazwy zmiennych środowiskowych nigdy nie opuszczają Twojego urządzenia.
Parser obsługuje YAML 1.2, które jest tym, co używają Kubernetes, GitHub Actions, Docker Compose i Helm. Jeśli plik waliduje się tutaj, będzie się ładować poprawnie w tych narzędziach.
FAQ Formattera YAML
Czy formatowanie YAML zachowa komentarze?
Nie. Parser js-yaml usuwa komentarze podczas parsowania — to ograniczenie wszystkich parserów YAML w JavaScript. Formatuj najpierw, a następnie dodaj komentarze z powrotem ręcznie.
Jaką wersję YAML obsługuje to narzędzie?
YAML 1.2, czyli wersję używaną przez Kubernetes, GitHub Actions, Docker Compose i Helm. To, co waliduje się tutaj, będzie się ładować czyszczenie w tych narzędziach.
Czy konwersja z YAML na JSON zachowuje typy?
Tak. Liczby, wartości logiczne, null i ciągi dat konwertują się poprawnie. true w YAML staje się wartością logiczną true w JSON, a nie ciągiem 'true'.
Jaka jest różnica między formatowaniem a konwersją?
Formatowanie utrzymuje plik jako YAML i normalizuje białe znaki i wcięcia. Konwersja całkowicie zmienia format wyjściowy — YAML na JSON tworzy dokument kompatybilny z .json.
Mój YAML ma wiele dokumentów oddzielonych ---. Czy wszystkie będą przetworzone?
Pierwszy dokument jest parsowany i ponownie emitowany. W przypadku plików wielodokumentowych podziel każdą sekcję na --- i przetwórz je indywidualnie.