TOML 格式化

在瀏覽器裡格式化或壓縮一份 TOML 子集。相關頁面: YAML · INI

格式化的是什麼

TOML 是常見的設定格式。這一頁把一個有用的子集排成穩定的版式,或去掉註解和空行。YAML 和 INI 各有自己的頁面:YAML 和 INI。

怎麼用

  1. 把 TOML 貼進來。輸入時立即更新開著。
  2. 方向是格式化或壓縮。
  3. 轉換只做一次。顯示範例載入一份文件,裡面有 title = "TOML"、enabled = true、一張 name 為 Ada 的 [owner] 表、一張帶 ports = [8000, 8001] 的 [database] 表,以及兩張名為 Hammer 和 Nail 的 [[products]] 表。
  4. 壓縮保留同樣的鍵,並去掉註解和表與表之間的空行。
  5. 全部清除清空兩個框。複製結果複製輸出。文件壞了會顯示行號。

這一頁讀的子集

註解以 # 開頭。鍵可以是裸寫、加引號或帶點號。表用 [name],表的陣列用 [[name]]。字串可以是基本、字面或多行。數字可以是整數、浮點、十六進位(0x)、八進位(0o)、二進位(0b),或帶底線的數字。true 和 false、陣列和行內表都會讀入。ISO 日期或時間按原來的記號保留,十六進位、八進位和二進位數字也一樣。

格式化先寫簡單鍵,再寫 [tables],然後寫 [[arrays of tables]]。註解會去掉。字面字串寫回時變成基本的引號字串。物件陣列用 [[name]] 寫出。壓縮是同一段文字,只是每張表前面不再留空行。

用在哪

  • 提交前整理一份 Cargo 或工具設定。
  • 看解析器拒絕的是哪一行。
  • 註解去掉之後比較兩份設定。

常見問題

註解去哪了?

格式化和壓縮都會丟掉註解。它們不是解析後文件裡的資料。

為什麼 0x10 還是 0x10?

十六進位、八進位、二進位和日期記號按原文重印,不會轉成十進位。