設定ファイルの整形

TOMLフォーマッター設定の意図を伝えるコメントも残す

構文と表の位置を確認し、元の入力を残したまま出力を整えます。

TOMLフォーマッター

TOML入力

整形結果

内容はこのブラウザ内に留まります。入力の送信・実行・保存やURLへの追加は行いません。

初期状態は並べ替えなし。連続するキーの組だけを並べ替え、注釈はキーに付随します。配列と表の順序は変えません。

TOML1.0.0・dprint TOML0.8.0・toml-eslint-parser1.0.3。構文検証はアプリのSchemaを確認しません。

入力UTF-16で50万単位・UTF-8で2MB、5万ノード・深さ100、出力200万文字、処理は5秒まで。

表のナビゲーション

TOMLを入力するか検証を実行してください。

TOMLフォーマッターは、設定値に添えた説明を残して読みやすさを整えます。結果は入力とは別の欄に表示されるため、キーの順序や空白の変化を確認してから元のテキストを置き換えられます。

TOML整形とTOMLバリデーションを使い分けてください。構文だけを調べる場合は「検証のみ」を選びます。TOMLコメント、複数行文字列、繰り返し現れる配列テーブルは、行の見た目ではなく構文として扱います。

TOMLフォーマッターを使う理由

説明と構造を読み取りやすく

設定と注釈のつながりを残す

TOMLフォーマッターは、オブジェクトへの変換で消えがちな独立コメントや行末コメントを保持します。キーを並べ替える場合は対応する注釈も移動し、空行で分けたグループの見出しはその組に残ります。

2枚の紙にある色付きの項目が、対応するコメントの札と一緒に並び替わる様子。

本物の表頭へ移動する

表の一覧には入力中の実際の表頭が並びます。同名の配列テーブルも個別に表示。三重引用符の文字列中にある角括弧の行を、表頭と誤認して移動先に加えることはありません。

3つの移動点が色付きの表頭につながり、灰色の文字列内の疑似表頭には線がない様子。

置き換える前に構造を確認

見落としやすい3つの操作

01

検証だけで止める

「検証のみ」は待機中の自動処理を止め、現在の入力を検証します。表の一覧は使えますが、整形結果を生成しないため出力は保存できません。入力を編集すると自動処理が再開します。手動なら自動を切り、整形またはCtrl/Cmd+Enterを使います。

02

入力の位置を開く

表の項目や最初のエラーを押すと入力の行・列へ移動します。配列テーブルは出現ごとに表示され、一覧は50件ずつ追加できます。この表示件数でダウンロード内容が切り詰められることはありません。

03

プレビューから適用する

結果を入力に使う操作、例、消去、UTF-8ファイルの読み込みは置換前に内容と行数を示します。適用後は1回取り消せ、入力・設定・結果・以前のエラーを戻せます。編集中は古い出力の保存が無効になります。

表示の整え方を選ぶ

設定値の型は保ったまま

コメントを含む構文を処理

引用符付きのキー、複数行文字列、インラインテーブルを扱います。出力を採用する前に解析結果とコメント内容を照合し、保持を確認できなければ途中のファイルを出さずに停止します。

キーの組だけを並べ替え

初期状態では順序を保ちます。並べ替えを選ぶと空行で分かれたキーの組が対象になり、付随する注釈も移動します。配列要素、インラインテーブルのキー、表や配列テーブルの順序は変えません。

インデントと改行を指定

2空白・4空白・タブ、目安の幅80・100・120列、LF・CRLFを選べます。幅は配置の目安であり、長い文字列やコメントを必ずその幅に収める指定ではありません。

新しい結果だけを出力

自動処理は入力後350ms待ち、ローカルworkerで実行します。手動時は整形ボタンが現れます。コピーとUTF-8保存は同じ最新の結果を使い、過去の結果は出力できません。

構文・保持・処理量の範囲

検証の成功が意味すること

対象はTOML1.0.0
toml-eslint-parser1.0.3をTOML1.0.0に指定し、dprint TOML0.8.0で整形します。TOML1.1専用構文は対象外です。重複キーや構文エラーは最初の診断と行・列を表示します。全エラーの網羅一覧ではありません。
空白まで同一にはしない
大きな整数、日付と時刻、高精度の数値表記、NaN・inf、多行文字列を保持します。コメントの内容と対応関係は残しますが、行末の空白を除くなど表示は変わります。保持検査が通らない出力は採用しません。
並べ替えの境界
空行で分かれた組の見出しコメントは上部に残り、ほかの前置・行末コメントは項目に付随します。表、配列テーブル、配列要素、インラインテーブルは並べ替えず、Cargo独自の慣例も適用しません。
アプリの仕様は検証しない
構文が正しいCargo.tomlやpyproject.tomlにも、未対応項目や不正な依存条件、用途に合わない型が含まれ得ます。Schema、依存解決、ビルド、自動修復は行いません。コメントをエンジン設定として実行したり外部取得に使ったりしません。
入力はテキストか単一ファイル
UTF-8の1ファイルまたは貼り付けに対応します。LFとCRLFは使えますが、単独CRは有効なTOML1.0の改行ではありません。URL読み込み、履歴保存、共有リンク、一括ディレクトリ処理、原本の自動上書きはありません。
処理の上限
入力はUTF-16で50万単位かつUTF-8で2MB以内、5万ノード・深さ100までです。出力は200万文字、workerはエンジン読み込みを含め5秒まで。構文・Unicode・上限・保持検査のエラー時は出力不可となり、キャンセルで処理を破棄します。

TOMLフォーマッターのよくある質問

入れ子・日時・複数行テキスト

入れ子の配列テーブルも整形できますか?

はい。TOMLフォーマッターはTOML1.0.0の構文として解析し、配列テーブルの出現順を保ちます。一覧には繰り返しごとの位置が出るので、同名でも移動先を区別できます。

日時の値はそのまま残りますか?

日付・時刻のリテラルを文字列への変換で作り直さず保持します。TOMLフォーマッターの前後検査で内容を照合しますが、アプリがその日時を利用できるかという業務上の条件までは確認しません。

三重引用符の文字列を扱えますか?

基本文字列とリテラル文字列の複数行表記に対応します。文字列内の角括弧やハッシュ記号を表頭やコメントとして処理せず、内容を残します。

設定を書くならYAMLとどう使い分けますか?

利用するアプリが要求する形式に従ってください。TOMLは明示的な表と値を持ち、YAMLとは構造の表現が異なります。このページは形式の移行を行わず、TOMLの整形と構文検証を扱います。

貼り付けた内容は記録されますか?

入力履歴は保存せず、処理はブラウザのworker内で行います。エンジンのファイルを読み込む通信に入力内容は含めません。保存を選んだときだけ新しいファイルを作ります。

気になる注釈や表の配置がありますか?

TOMLフォーマッターで確認する

TOMLフォーマッターで注釈、表の位置、キーの順序を確認してから設定を置き換えましょう。

構文検証の成功後も、プロジェクト側の検証は必要です。