TOMLフォーマッター・検証
TOML Formatter & Validator
TOMLを整形して検証し、テーブルの順序とインラインテーブルの書き方を揃えます。
TOMLファイルの間隔を整えます。`key = value`、見出しの空白、配列の折り返しを揃え、ついでにTOML 1.0の仕様に合っているかも確かめます。ファイルの上を2つのリーダーが通ります。1つは表記の規則を知っていてコメントを守り、もう1つは意味の規則を知っていてJSONの表示を作ります。
TOML 入力
.toml ファイルを置く
このタブの中だけで読みます。どこにもアップロードしません。
整形された TOML
整形しました。
テーブル
5
キーと値の組
13
コメント
1
検査
合格
何を変えて何を残すか
- · そろえるのは、
key = valueのまわりの空白、[ a . b ]のような見出しの中の空白、配列やインラインテーブルの中の間隔です。見出しの前には空行をひとつ置きます。 - · 短い配列は1行に、折り返し幅を超える配列や中にコメントのある配列は要素ごとに1行にして、最後の要素のうしろにカンマを付けます。
- · 文字列・数値・日付は書かれたとおりに残します。
1_000を1000に、0xffを255にするのは整形ではなく編集です。 - · 引用符が要らないキー(
"name")からは引用符を外し、要るキー("127.0.0.1")はリテラルの引用符付きで書きます。 - · 先頭のゼロ、置き場所を誤ったアンダースコア、
True、複数行にまたがるインラインテーブル、重複したキー、二度定義されたテーブルは、toml.io の TOML 1.0 仕様どおりに拒否します。
JSON や YAML に変換するには JSON⇄TOML変換 を使ってください。
使い方
ファイルを貼り付けます
`Cargo.toml`、`pyproject.toml`、`netlify.toml`といったものです。間隔がまちまちなのは当たり前で、それを直すためのものです。
配列を折り返す幅を決めます
短い配列は1行のままです。幅を超えるもの、あるいは中にコメントがあるものは、1要素につき1行にして末尾にカンマを付けます。その末尾のカンマが、この先の差分を1行に抑えてくれます。
役に立つときだけ並べ替えます
キーの並べ替えはキーと値の行だけを動かし、コメントと空行はその場に残します。テーブルの並べ替えは同じ階層の見出しを名前順に動かし、その下のテーブルも一緒に連れていきます。テーブルの配列の順序はデータなので、手を触れません。
よくある質問
`1_000`が`1000`に書き換えられないのはなぜですか
それは整形ではなく編集だからです。数値の中のアンダースコア、16進のリテラル、日付をどう書いたか——どれも書いた人が選んだものです。フォーマッタが変えるのは空白とクォートだけで、値は書かれたままにします。
他のパーサは受け付けるファイルが、ここでは拒否されました
TOML 1.0が禁じていて、寛容なリーダーが見逃すもののどれか、という可能性が高いです。先頭のゼロ、置き場所の違うアンダースコア、大文字で始まる`True`、複数行にまたがるインラインテーブル、キーの重複、二度定義されたテーブルといったものです。エラーがどれなのかを行番号とともに示します。
JSONに切り替えると日付はどうなりますか
文字列になり、そのことを警告で伝えます。TOMLにはオフセット付きの日時、ローカル日付、ローカル時刻が正式な型としてありますが、JSONにはどれもありません。文字だけが移り、型は失われます。
コメントは残りますか
残ります。どのキーに付いていたかという位置関係も一緒に守ります。フォーマッタが変換ツールのリーダーを使い回さず、自分のスキャナを別に持っているのはそのためです。コメントの数は統計に出ます。
ここから渡せます
JSON⇄TOML変換
JSON ⇄ TOML
入れ子のオブジェクトをテーブル見出しに対応づけて、JSONとTOMLを相互に変換します。
JSONフォーマッター・検証
JSON Formatter & Validator
JSONを整形・圧縮して検証し、構文エラーがあれば行と列を正確に指し示します。
YAMLフォーマッター・検証
YAML Formatter & Validator
YAMLのインデントを揃えて検証し、パーサを壊すタブやアンカーの誤りに印を付けます。
XMLフォーマッター・検証
XML Formatter & Validator
XMLのインデントを整え、整形式として最初に崩れている箇所の行と列を示します。
次の一手
このツールが出したものをそのまま受け取れる道具です。
JSONフォーマッター・検証
JSON Formatter & Validator
JSONを整形・圧縮して検証し、構文エラーがあれば行と列を正確に指し示します。
JSON⇄TOML変換
JSON ⇄ TOML
入れ子のオブジェクトをテーブル見出しに対応づけて、JSONとTOMLを相互に変換します。
YAMLフォーマッター・検証
YAML Formatter & Validator
YAMLのインデントを揃えて検証し、パーサを壊すタブやアンカーの誤りに印を付けます。
Base64エンコード・デコード
Base64 Encoder & Decoder
テキストでもファイルでもBase64とBase64URLを符号化・復号し、UTF-8も正しく扱います。
curlをコードに変換
curl to Code
curlのコマンドをfetch・axios・Pythonのrequests・Go・PHP・PowerShellのコードに変換します。
文字列のハッシュ
Text Hash
文字列のMD5・SHA-1・SHA-256・SHA-384・SHA-512・CRC-32を計算し、大文字表記とBase64での出力も選べます。