YAML ビューティファイア/バリデータ

YAML を検証し、2 スペースインデントのすっきりしたブロックスタイルに整形。エラーは行と列で表示。WebAssembly でローカル実行します。

入力内容とファイルはブラウザ内に留まります

YAML 入力

ここに YAML を貼り付けると、整形や構文エラーのチェックができます。

エディター内では Tab でインデントします。Esc を押してから Tab でエディターの外に移動します。

出力

整形された YAML または検証結果がここに表示されます。

このページの内容

YAML ファイルの構文エラーをチェックし、一貫したブロックスタイルに書き直します。パースと整形は WebAssembly にコンパイルされた小さな Rust ライブラリがブラウザ内で行い、このライブラリはフォーマットか検証を初めてクリックしたときにだけ読み込まれます。

詳細な機能

検証 は入力をパースするだけで、「YAML は有効です」と答えるか、最初のエラーを行と列つきで表示します。例: mapping values are not allowed in this context at line 2 column 7。フォーマット はすべてのドキュメントをパースして出力し直します。マッピングとリストは 2 スペースインデントのブロックスタイルになり、[80, 443] や {host: localhost} のようなインラインのコレクションは複数行に展開され、各ドキュメントは --- で始まります。--- で区切られた複数ドキュメントのファイルにも対応しています。

フォーマットはテキストではなくデータを書き直すため、一部の内容は正規化されます。コメントは削除され、空の値は ~ になり、YAML 1.1 のツールが真偽値として読む単語 (yes、no、on、off) は flag: "yes" のように引用符で囲まれます。キーの順序は保持されます。構文チェックだけが必要でファイルをそのまま残したい場合は、検証を使ってください。

入力エディターは YAML をハイライトし、ネストしたブロックを折りたためます。結果は読み取り専用の出力エディターに表示されます。貼り付け でクリップボードのテキストを挿入し、コピー で出力をコピーします。入力した内容が保存やアップロードされることはありません。

実用例

インラインのリストをブロックスタイルに: ports: [80, 443] は ports: に続けて - 80 と - 443 の行に整形されます。

インデントのエラーを見つける: name: demo の後にインデントされた port: 80 が続くと、「YAML は無効です: mapping values are not allowed in this context at line 2 column 7」で失敗します。

複数のドキュメント: a: 1、---、b: 2 は 2 つのドキュメントのままで、出力は ---、a: 1、---、b: 2 になります。

正規化される値: flag: yes と空の empty: は flag: "yes" と empty: ~ になります。

このツールの使い方

  1. YAML を追加する

    YAML 入力 エディターに貼り付けるか、貼り付け をクリックしてクリップボードの内容を挿入します。

  2. 構文をチェックする

    検証 をクリックします。バッジに「YAML は有効です」と表示されるか、エディターの上に行と列つきのエラーが表示されます。

  3. フォーマットする

    フォーマット をクリックする (または入力欄で Ctrl+Enter / Cmd+Enter を押す) と、出力 に正規化された YAML が表示されます。

  4. 結果をコピーする

    コピー をクリックして整形済みの YAML をクリップボードに入れます。

ヒントとベストプラクティス

  • フォーマットはコメントを削除します。元のファイルを残しておくか、重要なコメントを含むファイルには検証だけを使ってください。
  • YAML ではインデントにタブを使えません。エラー位置は問題のある行を指します。
  • 行と列の番号は 1 から始まり、多くのエディターの表示と一致します。
  • Kubernetes、Compose、CI のファイルをコミットする前に、"yes" のような引用符付きの値がツールの期待どおりか確認してください。
  • WebAssembly モジュールは最初のフォーマットまたは検証のときにダウンロードされ、その後はオフラインでも動作します。
  • 入力エディター内では Tab でインデントが入ります。フォーカスを外すには Esc を押してから Tab を押します。