Pemformat TOML

Tempel TOML dan spasinya dinormalkan — kunci, string, dan nilai tetap utuh.

Cara menggunakan

  1. Tempel TOML Anda ke kotak — TOML diformat saat Anda mengetik, tidak ada tombol yang perlu ditekan.
  2. Pilih 2 atau 4 spasi untuk larik multi-baris, dan nyalakan Sejajarkan = bila Anda ingin tanda sama dengan berbaris rapi; hasilnya diperbarui seketika.
  3. Bila ada yang salah, pesannya menyebutkan baris, kolom, dan alasannya. Salin hasilnya atau unduh sebagai berkas .toml.

Contoh

Masukan

[package]
name="ykit"
version = "0.1.0"
edition="2021"
authors = ["Rina Wijaya <rina@example.com>",  "Gita Pertiwi <gita@example.com>"]
keywords=["alat",   "toml"]

[dependencies]
serde={version="1.0",features=["derive"]}

Terformat

[package]
name = "ykit"
version = "0.1.0"
edition = "2021"
authors = ["Rina Wijaya <rina@example.com>", "Gita Pertiwi <gita@example.com>"]
keywords = ["alat", "toml"]

[dependencies]
serde = { version = "1.0", features = ["derive"] }

Hanya aturan bawaan: dua spasi dan tanpa perataan. Urutan kunci, isi string, dan urutan larik tidak disentuh; tabel inline hanya dinormalkan spasinya dan tidak pernah diberi koma di akhir.

Aturan, batasan, dan masalah yang diketahui

  • Hanya sintaks dan konflik kunci/tabel: kunci berulang, tabel yang didefinisikan dua kali, benturan kunci/tabel, string dan escape, angka, tanggal, larik, dan tabel inline. Tanpa skema, tanpa semantik bisnis, tanpa perbaikan otomatis.
  • Hanya spasi di luar string dan komentar yang ditulis ulang. Urutan kunci, urutan tabel, kunci polos vs berkutip, pembatas dan escape string, penulisan angka/tanggal/boolean, serta teks komentar disalin karakter demi karakter.
  • Larik satu baris tetap satu baris; larik multi-baris mempertahankan satu item per baris beserta komentar dan koma di akhirnya. Tabel inline dicetak dalam satu baris, sehingga larik di dalamnya dilipat menjadi satu baris; baris baru di dalam string multi-baris adalah konten dan tetap seperti yang diketik, yang dapat membuat tabel inline merentang beberapa baris.
  • Baris baru atau komentar di dalam tabel inline adalah kesalahan sintaks (TOML sendiri melarang keduanya). Komentar di akhir tetap satu spasi setelah kode, dan spasi di ujung komentar dihapus.
  • Rangkaian baris kosong diciutkan menjadi satu, baris kosong di awal dan akhir dibuang, dan tidak ada baris kosong yang ditambahkan di antara tabel.
  • Larik, tabel inline, atau string multi-baris yang tidak ditutup di ujung, header tabel terpotong, `key =` tanpa nilai, atau jalur kunci yang terputus tepat setelah titik adalah peringatan, bukan kesalahan: Anda tetap mendapat hasil. Kesalahan nyata (koma hilang, nilai tanpa kutip, tanggal salah) adalah kesalahan dengan baris dan kolom. Hanya kesalahan pertama yang dilaporkan.
  • Nomor baris dan kolom menghitung titik kode Unicode, jadi satu emoji adalah satu kolom; CRLF dihitung satu baris baru. Hanya spasi dan tab yang merupakan spasi TOML: U+3000 dan U+00A0 di luar string adalah kesalahan, sedangkan di dalam string keduanya konten.
  • Kunci polos hanya ASCII — kunci Mandarin atau Arab harus dikutip, dan itu aturan TOML sendiri, bukan preferensi alat ini. Angka dan tanggal tidak pernah ditulis ulang atau dikonversi ke sistem angka lain.
  • Tanpa minifikasi, pengurutan kunci, normalisasi nilai, unggahan berkas, parameter URL, atau riwayat. Semua berjalan di peramban Anda: tidak ada yang diunggah atau disimpan.
  • Di atas 200.000 karakter, hasil diperbarui sekitar 0,6 dtk setelah Anda berhenti mengetik; teksnya tidak pernah dipotong. Keluaran memakai LF tanpa baris baru di akhir, dan pemformatannya idempoten dengan pengaturan perataan dan indentasi yang sama.

Yang biasanya dibutuhkan berikutnya setelah konfigurasinya mudah dibaca.