Lewati ke konten

Validator TOML

Validasi file TOML seperti Cargo.toml, pyproject.toml, atau pengaturan Hugo dan Netlify sebelum file tersebut menyebabkan kegagalan build. Validator mengurai input berdasarkan spesifikasi TOML dan melaporkan error pertama beserta baris, kolom, dan penjelasan parser, termasuk kunci duplikat, tabel yang didefinisikan ulang, serta tanggal yang tidak mungkin. File yang valid menampilkan jumlah tabel dan kunci serta kunci tingkat teratas, sehingga Anda dapat melihat strukturnya sekilas.

Reset

Pertanyaan yang sering diajukan

Apa yang diperiksa validator TOML?

Alat ini mengurai kunci, string, angka, boolean, tanggal dan waktu, array, tabel inline, tabel, serta array tabel persis seperti yang ditetapkan dalam spesifikasi TOML. Setiap penyimpangan, seperti nilai yang hilang, string tanpa tanda kutip, atau escape yang salah, dilaporkan sebagai error. File yang valid mendapatkan ringkasan singkat strukturnya.

Informasi apa yang tercantum dalam sebuah error?

Setiap error menampilkan baris dan kolom tempat penguraian berhenti serta baris detail dari parser, misalnya tanggal tidak valid atau upaya mendefinisikan ulang tabel atau nilai yang sudah didefinisikan. Baris dan kolom dimulai dari 1. Hanya error pertama yang ditampilkan karena error berikutnya sering kali disebabkan oleh error tersebut.

Mengapa kunci atau tabel dilaporkan didefinisikan ulang?

TOML tidak mengizinkan kunci yang sama muncul dua kali dalam sebuah tabel, dan header tabel seperti [server] hanya boleh muncul sekali. Mendefinisikan kunci bertitik seperti server.port setelah tabel [server] yang sudah menetapkan port juga dihitung sebagai definisi ulang. Gabungkan entri di satu tempat untuk memperbaikinya.

Bagaimana tabel dan kunci dihitung?

Tables menghitung setiap tabel di bawah akar, termasuk tabel inline dan setiap entri dalam array tabel. Keys menghitung setiap kunci yang menyimpan nilai selain tabel atau array tabel, sehingga daftar string dihitung sebagai satu kunci. Top-level keys mencantumkan nama-nama di akar, hingga 50 nama.

Apakah tanggal dan waktu diperiksa?

Ya. Tanggal-waktu dengan offset, tanggal-waktu lokal, tanggal lokal, dan waktu lokal semuanya divalidasi, termasuk nilai yang tidak mungkin seperti bulan 13 atau jam 25. Tanggal yang ditulis dalam format lain, misalnya 05/27/1979, bukan tanggal TOML dan harus diberi tanda kutip sebagai string.

String dan escape apa saja yang diperbolehkan?

String dasar dalam tanda kutip ganda mendukung escape seperti \n, \t, \" dan \uXXXX, sedangkan string literal dalam tanda kutip tunggal menganggap setiap karakter sesuai penulisannya. Keduanya memiliki bentuk multibaris dengan tiga tanda kutip. Escape yang tidak dikenal atau string yang tidak ditutup akan dilaporkan beserta posisinya.

Apakah bilangan bulat yang sangat besar diterima?

Ya. Bilangan bulat hingga batas 64-bit spesifikasi TOML, seperti 9223372036854775807, diterima. Bilangan bulat yang melampaui rentang tersebut, angka nol di awal, dan garis bawah yang tidak berada di antara digit akan dianggap error.

Apakah byte order mark atau akhiran baris Windows menimbulkan masalah?

Tidak. Byte order mark UTF-8 di awal diabaikan, dan akhiran baris LF maupun CRLF diterima. Karakter kontrol di dalam string yang tidak di-escape dilaporkan sebagai error.

Apakah alat ini memeriksa makna kunci seperti yang dilakukan Cargo atau Poetry?

Tidak, validator hanya memeriksa sintaks dan struktur TOML. Sebuah file bisa valid sebagai TOML tetapi tetap berisi kunci yang tidak dipahami Cargo atau backend build Python. Gunakan alat ini untuk menyingkirkan masalah sintaks sebelum memeriksa pengaturan khusus alat.

Seberapa besar input yang dapat digunakan, dan bisakah saya mengonversinya?

Input dapat berukuran hingga 5 MiB, dan array bersarang serta tabel inline dapat memiliki kedalaman hingga 64 level. Untuk mengonversi TOML yang valid menjadi JSON, YAML, atau format lain, gunakan Data Format Converter.

Tentang OneClick Pro

OneClick Pro adalah kumpulan gratis berisi lebih dari 150 alat web untuk pekerjaan sehari-hari: mengonversi gambar dan satuan, memformat dan memvalidasi kode, memeriksa domain dan SEO, serta bekerja dengan teks, tanggal, dan angka. Setiap alat dapat digunakan tanpa registrasi atau berlangganan, dan apa pun yang Anda masukkan hanya digunakan untuk menghitung hasil dan tidak pernah disimpan. Gunakan sebagai kotak alat praktis untuk tugas sesekali, atau simpan alat yang Anda gunakan setiap hari ke bookmark.