重要なポイント
- 01js-yamlパーサーで一貫性のあるインデント付きYAMLをフォーマット — Node.jsビルドツールで使用されるのと同じライブラリ。
- 02構文を検証してエラーの正確なラインナンバーを報告。
- 03両方向でYAMLとJSONの間で正しい型保存で変換。
- 04アップロードなし — 操作全体がブラウザで局所的に実行。
設定ファイルのYAMLフォーマットが重要な理由
YAMLはKubernetes、GitHub Actions、Docker Compose、Helmチャート、その他多くのツールのデフォルト設定言語です。また、インデントに不安定で有名です — 1つのインデント間違いは無声型ミスマッチまたはデプロイをブロックするハード解析エラーを生成する可能性があります。定期的なフォーマットでファイルを一貫性のある状態に保ち、CIに到達する前に問題を捕捉します。
YAML と JSON間の変換も同じくらい有用です。いくつかのツールはAPIコールまたはスキーマ定義にのみJSONを受け付けますが、人間は一般にレガシー設定ファイルをYAMLで好みます。データ型を失うことなく2つの間をラウンドトリップできる — 数値は数値のままで、ブール値はブール値のまま — 時間を節約し、微妙なバグを防止します。
YAMLをフォーマットまたは変換する方法
- 01
YAMLまたはJSONを貼り付け
Kubernetesマニフェスト、GitHub Actionsワークフロー、Helmバリューファイル、または他のYAMLドキュメントを貼り付けます。JSON-to-YAML変換の場合、代わりにJSONを貼り付けます。
- 02
アクションを選択
YAMLをフォーマットを選択してインデント正規化とドキュメント整理をその場で行うか。YAMLをJSON または JSONをYAMLを選択して形式全体を変換します。
- 03
エラーがあれば確認
入力が構文エラーを持つ場合、ツールはjs-yamlパーサーからの正確なラインナンバーと理由を表示 — Node.jsツールで見るのと同じパーサー、その為本番で表示されるエラーと一致します。
- 04
出力をコピー
コピーをクリックしてフォーマットまたは変換された出力を取得します。設定ファイル、APIボディ、またはスキーマ定義に貼り付けます。
このツールが時間を節約する場合
- 01Kubernetesマニフェストがドリフトした — コミット前にインデント正規化。
- 02GitHub Actionsワークフローが解析に失敗 — 正確なエラーラインを検証。
- 03APIはJSONのみ受け付けるが設定はYAML保存 — ワンクリックで変換。
- 04新しいサービスをオンボード — JSON例ペイロードをHelmチャート用YAMLに変換。
- 05Stack OverflowからコピーしたYAML — プロジェクトの2スペーススタイルに再フォーマット。
- 06Helmバリューマージをデバッグ — 各values.yamlが個別にクリーンか検証。
非公開、アップロード不要
フォーマットと変換はjs-yamlを使用してブラウザで完全に実行 — Webpack、Rollup、ほとんどのJavaScriptビルドツールにバンドルされるのと同じライブラリ。設定ファイル、シークレット参照、環境変数名はデバイスを離れません。
パーサーはYAML 1.2をターゲットにしており、これはKubernetes、GitHub Actions、Docker Composeが使用するバージョンです。ファイルがここで検証される場合、それらのツールで正しく読み込まれます。
YAMLフォーマッタFAQ
YAMLフォーマットはコメントを保持しますか?
いいえ。js-yamlパーサーは解析中にコメントを削除します — これはすべてのJavaScript YAMLパーサーの制限です。最初にフォーマット、次に手動でコメント追加。
これはどのYAMLバージョンをサポートしていますか?
YAML 1.2、Kubernetes、GitHub Actions、Docker Compose、Helmで使用されるバージョン。ここで検証されるものはこれらのツールで正常にロードされます。
YAMLからJSONへの変換は型を保持しますか?
はい。数値、ブール値、null、日付文字列は正しくラウンドトリップします。YAMLの真はJSONでブール真になり、文字列'true'ではありません。
フォーマットと変換の違いは何ですか?
フォーマットはファイルをYAMLとして保持して空白とインデント正規化します。変換は出力形式全体を変更 — YAMLからJSONへの変換は.json互換ドキュメントを生成します。
YAMLは---で分離された複数のドキュメントを含みます。すべてが処理されますか?
最初のドキュメントは解析して再送出されます。複数ドキュメントファイルの場合、各セクションを---で分割して個別に処理します。