Loading…

このYAMLフォーマッターについて オンラインYAMLフォーマッター&ビューティファイヤー

乱雑な`values.yaml`、`docker-compose.yml`、GitHub Actionsワークフローで作業中ですか?このYAMLフォーマッターは、アンカー、エイリアス、ブロックスカラーを保持しながら、インデントと行折り返しを正規化します。YAMLを貼り付け、インデント設定を調整し、数秒でレビュー対応可能なクリーンな設定をコピーできます。🚀

このYAMLフォーマッターの主な機能

  • YAML 1.2設定ファイル向けに調整されたPrettierベースのフォーマット
  • 設定可能なインデントサイズ(1〜8)とスペース/タブによる一貫したインデント
  • 長いキーや値が読みやすくなる調整可能な折り返し/行の長さ
  • アンカー、エイリアス、文字列としてのブール値、複数行ブロックスカラーを正しく処理
  • Kubernetes、Docker Compose、CIパイプラインなどの`.yaml`および`.yml`ファイルに対応
  • エディターからYAMLを貼り付けるか、設定ファイルをフォーマッターにドラッグ&ドロップ
  • フォーマットされたYAMLをワンクリックでエディターやリポジトリにコピー
  • フォーマットは主にブラウザー内でクライアント側で実行され、必要なパーサー/プラグインがない場合のみ安全なサーバーフォールバックが使用されることがあります

🔧 YAML設定ファイルのフォーマット方法 for yaml-formatter

1

1. YAMLを貼り付けるかアップロード

任意のYAMLスニペット(Kubernetesマニフェスト、`docker-compose.yml`、GitHub Actionsワークフロー、Ansibleプレイブックなど)をコピーしてエディターに貼り付けるか、`.yaml`/`.yml`ファイルをドラッグ&ドロップしてください。

2

2. インデントと折り返しを調整

スペースかタブを使用するか選択し、インデントサイズ(1〜8スペース)を設定し、チームのスタイルに合わせて折り返し/行の長さを調整してください。折り返し長さを`0`に設定すると、非常に大きな内部`printWidth`を使用して折り返しを実質的に無効にします。

3

3. フォーマッターを実行

**フォーマット**ボタンをクリックしてください。PrettierベースのYAMLエンジンが、アンカー、エイリアス、ブロックスカラーを保持しながら一貫したインデントで設定を書き換えるため、セマンティクスは変更されません。

4

4. クリーンなYAMLをコピー

出力を確認し、フォーマットされたYAMLをエディターにコピーするか、Gitにコミットするか、CI/CDやクラウドプロバイダーのUIに貼り付けてください。

技術仕様

フォーマットエンジンとYAMLサポート

このツールは、UIで設定オプションが表示されるPrettierベースのYAMLフォーマッター上に構築されています。

機能サポート備考
YAMLバージョン✅ YAML 1.2(一般的)Kubernetes、Docker、CI/CD、アプリケーションで使用される現代的な設定スタイルのYAMLに適しています。
アンカーとエイリアス✅ 保持周囲の構造を再インデントしながら、`&anchor`と`*alias`参照をそのまま保持します。
ブロックスカラー✅ 保持内部のインデントを尊重して、`|`と`>`ブロックスカラーを維持します。
ブール値と数値✅ 注意深い処理フォーマットは値を保持しますが、`yes`と"yes"、`0012`と"0012"の違いが明らかになる場合があります。
マルチドキュメントYAML(`---`)✅ 一般的同じファイル内の複数のドキュメントは順序を保ち、一貫してフォーマットされます。
特定のYAMLスニペットが、バンドルされたPrettier YAMLパーサーが理解できない非常に特殊な構文やカスタムタグを使用している場合、パーサーエラーが表示されることがあります。その場合は、スニペットを簡素化するか、独自のツールチェーンでローカルにフォーマットを実行してください。

インデント、折り返し長さ、出力スタイル

フォーマッターは主要なオプションを公開しているため、プロジェクトのスタイルに可能な限り合わせることができます。

設定オプション実用的な推奨事項
インデントスタイルスペース / タブほとんどのYAMLスタイルガイドはスペースを推奨しています。チームが明示的にタブを好む場合のみタブを使用してください。
インデントサイズ1〜8スペースKubernetesとDockerでは2スペースが一般的です。視認性を高めるために4スペースを使用することもあります。
折り返し / 行の長さ0〜120カラム`0`は折り返しを無効にし(非常に大きな内部`printWidth`を使用)、80〜100は差分をコンパクトに保ちます。
ファイル拡張子.yaml、.ymlツール設定の`fileExtensions`と`acceptedFileTypes`に一致します。
これらのオプションをリポジトリの`.prettierrc`または`.editorconfig`に合わせて、オンラインでのフォーマットがローカル開発およびCIチェックと一致するようにしてください。

制限とパフォーマンス

ブラウザタブ内でのYAML設定のインタラクティブなフォーマットに最適化されています。

パラメータ制限 / 動作備考
最大テキスト入力サイズ約 2 MB(約2,000,000文字)フォーマッター関数内で適用される安全制限です。
最大ファイルアップロードサイズ≈ 5 MB利便性と信頼性のためにUIの`maxFileSize`設定によって制限されます。
フォーマットタイムアウト~25秒ブラウザのハングアップを防ぐため、長時間実行される操作は中止されます。
主要実行環境クライアントサイド`runPrettier`とPrettier YAMLプラグインを使用して、ブラウザ内で直接実行されます。
サーバーフォールバックパーサー/プラグインエラーのみ必要なパーサープラグインが欠落している場合、安全な`/api/yaml-formatter`エンドポイントをフォールバックとして使用できます。
巨大なYAMLバンドル(Helmチャート、大規模なCRDライブラリなど)の場合、ローカルワークフローやCIパイプラインに統合された`prettier`や`yq`などのCLIを推奨します。

YAMLフォーマットのCLI代替手段

クイッククリーニングにはオンラインフォーマッターを、大規模プロジェクトと自動化パイプラインにはCLIツールを頼りにしてください。

Linux / 🍏 macOS

yqでYAMLファイルをフォーマット(プリティプリント)

yq eval -P config.yaml > config.formatted.yaml

yqのバージョンに応じて、一貫したインデントとキー順序でYAMLを書き換えます。

PrettierでYAMLを正規化

prettier --parser yaml --write "**/*.{yaml,yml}"

リポジトリ全体で同じクラスのエンジン(Prettier YAMLパーサー)を実行します。

Windows (PowerShell / cmd)

PowerShell + yqを使用してYAMLをフォーマット

yq eval -P config.yaml | Set-Content config.formatted.yaml

YAMLをプリティプリントし、結果をディスクに書き戻します。

PowerShellオブジェクト経由でYAMLをラウンドトリップ

Get-Content config.yaml -Raw | ConvertFrom-Yaml | ConvertTo-Yaml | Set-Content config.formatted.yaml

PowerShellのYAMLサポートを使用して構造とインデントを正規化します。

このオンラインフォーマッターをCIパイプラインの`prettier --check`や`yq`ステップと組み合わせて、リポジトリ内のすべてのYAMLが一貫してフォーマットされることを保証してください。

実用的なYAMLユースケース

インフラストラクチャ & Kubernetesマニフェスト

  • コードレビューの前にKubernetesの`Deployment`、`Service`、`Ingress`マニフェストをフォーマットします。
  • Helmチャート内の`values.yaml`ファイルを正規化して差分をクリーンにします。
  • 環境間でCRD、ConfigMap、SecretのYAMLのインデントを一貫させます。
apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
        - name: my-app
          image: my-app:latest
          ports:
            - containerPort: 80

Docker Compose & ローカル開発設定

  • ドキュメントやチケットで共有する前に`docker-compose.yml`を美化します。
  • サービス、ネットワーク、ボリュームのインデントを揃えて、メンテナンスを容易にします。
  • ブログ記事やオンボーディングガイド用にクリーンなYAMLスニペットを準備します。
version: "3.9"
services:
  web:
    image: myapp:latest
    ports:
      - "8080:80"
    environment:
      - NODE_ENV=production
  db:
    image: postgres:16
    environment:
      POSTGRES_PASSWORD: example

CI/CDパイプラインと自動化

  • GitHub Actionsワークフロー(`.github/workflows/*.yml`)をフォーマットします。
  • GitLab CI(`.gitlab-ci.yml`)やAzure Pipelines YAMLを整理します。
  • 自動化とインフラストラクチャとしてのコードYAMLをチーム間で読みやすく保ちます。
name: CI
on:
  push:
    branches: [ main ]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22
      - run: npm ci
      - run: npm test

❓ Frequently Asked Questions

このYAMLフォーマッターは何をしますか?

YAML入力(通常は設定ファイル)を受け取り、PrettierベースのYAMLエンジンを使用して一貫したインデントと折り返しで書き直します。設定の意味は同じままですが、レイアウトが読みやすくレビューしやすくなります。

🧩どのYAML機能がサポートされていますか?

このフォーマッターは、設定ファイルで使用される一般的なYAML 1.2機能向けに設計されています:マッピング、リスト、アンカーとエイリアス、ブロックスカラー(`|` / `>`)、`---`で区切られたマルチドキュメントファイル。カスタムタグや非常に特殊な構造は、基盤となるパーサーで完全にサポートされていない場合があります。

📏YAML入力のサイズ制限はありますか?

安定性とブラウザのパフォーマンスのため、テキスト入力は約2MB(〜2,000,000文字)、アップロードファイルは約5MBに制限されています。大規模なコードベースや生成されたYAMLの場合は、代わりにCLIまたはCIパイプラインからPrettierやyqを実行してください。

🔐私のYAMLはサーバーにアップロードされますか?

フォーマットは主にブラウザ内で`runPrettier`とPrettier YAMLプラグインを介して実行されるため、通常の操作ではYAMLがクライアントから送信されることはありません。必要なパーサープラグインが欠落している稀なケースでは、ツールが安全な`/api/yaml-formatter`エンドポイントにフォールバックする場合があります。その場合でも、YAMLは一時的に処理されるだけで保存されません。

⚠️パーサーエラーが表示されることがあるのはなぜですか?

パーサーエラーは通常、YAMLが不正な形式(例:一貫性のないインデント、`:`の欠落、リストアイテムの位置ずれ)であるか、バンドルされたパーサーが理解できない構文を使用していることを意味します。インデントと構造を検証するか、スニペットを簡略化してから、再度フォーマッターを実行してください。

📚これはローカルのPrettier設定とどのように関連しますか?

このツールは内部でPrettierベースのYAMLエンジンを使用しており、`prettier --parser yaml`を実行するのと似ています。簡単な一回限りの修正に使用でき、プロジェクト全体のフォーマットには引き続きローカルの`.prettierrc`とCLIコマンドを頼ることができます。

Pro Tips

Best Practice

リポジトリ内のすべてのYAML(Kubernetes、GitHub Actions、Docker Compose)を同じインデントスタイルで正規化すると、差分とレビューがはるかに容易になります。

Best Practice

`yes`、`no`、`on`、`off`、`0012` などの値には注意してください – これらをブール値や8進数風の数値ではなく文字列として扱いたい場合は引用符で囲んでください。

Best Practice

このオンラインフォーマッターを使用して、ドキュメントやチケット用のスニペットを素早く整理し、本格的なプロジェクトではコミット前フックで `prettier` や `yq` を利用してください。

Best Practice

大規模な設定ファイルをリファクタリングする際は、まずフォーマットして、意味的な変更がインデントのノイズに埋もれずに Git 差分で明確に目立つようにしてください。

Additional Resources

Other Tools