Pengatur Format Bahasa Zig
Memandu
Pengatur Format Bahasa Zig
Tempelkan sumber Zig mentah dan segera dapatkan kode yang telah diatur dalam gaya canonical zig fmt gaya: kurung K&R, indentasi 4 spasi, koma di akhir daftar multi-baris, jarak konsisten di sekitar operator, dan blok string yang rapi. Tidak perlu instalasi, tidak perlu toolchain — berjalan sepenuhnya di browser Anda.
Cara Penggunaan
- Tempelkan sumber Zig Anda ke kotak masukan, atau drop sebuah
.zigdrag file ke pengunggah. - Pilih gaya indentasi — 4 spasi (default zig fmt), 2 spasi, atau tab.
- Beralih Tambahkan koma di akhir untuk memilih aturan satu elemen per baris untuk daftar argumen dan field multi-baris.
- Salin output yang telah diformat, atau unduh sebagai
formatted.zig.
Fitur
- Gaya kurung canonical – Memindahkan kurung pembuka yang tergantung ke baris sebelumnya, bebas K&R / Allman.
- Penempatan operator – Menormalisasi spasi di sekitar
=,==,!=,<=,+,-,*,/,%,++,**,&&dan||tanpa memecah sintaks unari atau pointer. - Pengaturan spasi kata kunci – Menambahkan spasi setelah
if,while,for,switch,catch,orelse, dan kata kunci alur kontrol sebelum(atau{. - Koma di akhir – Menambahkan koma pada elemen terakhir dari daftar multi-baris
{},()dan[]ketika tanda tutup berada di baris sendiri. - String multi-baris – Menjaga
\\penyambungan string dan mengindentasikannya satu tingkat lebih dari penugasan. - Validasi tanda kurung – Menandai kurung yang tidak seimbang
{},(),[], dan komentar blok yang tidak ditutup sebelum Anda melihat kesalahan kompilasi. - Kontrol indentasi – Pilih 4 spasi, 2 spasi, atau tab tergantung pada gaya rumah.
- File atau tempel – Drop file ke dalam kotak atau tempel langsung. Output dapat disalin satu klik dan diunduh.
.zigMengapa Zig menggunakan formatter sendiri daripada mengandalkan konvensi?
Tanya Jawab Umum
-
Zig memperlakukan penempatan sumber sebagai bagian dari kontrak bahasa. zig fmt adalah penulis ulang normatif yang dibangun berdasarkan parser kompilator, sehingga setiap proyek di setiap platform menghasilkan output yang identik secara byte. Hal ini menghilangkan debat gaya, membuat perbedaan tidak mengganggu, dan memberikan alat seperti LSPs target yang stabil. Konvensi yang tercatat dalam panduan gaya bergerak antar tim; formatter deterministik tidak demikian.
Apa arti aturan koma di akhir dalam Zig?
-
Dalam Zig, koma di akhir elemen terakhir dari daftar argumen, daftar field struktur, atau literal array adalah sinyal bagi zig fmt: tetapkan daftar ini satu elemen per baris. Hapus koma di akhir dan zig fmt akan menggabungkan daftar tersebut ke satu baris jika memungkinkan. Hal ini membuat penempatan format secara parsial dikendalikan oleh penulis kode — satu koma adalah perbedaan antara tampilan vertikal dan horizontal.
Bagaimana string multi-baris direpresentasikan dalam sumber Zig?
-
Zig tidak memiliki string tiga kutip. Literal multi-baris dibangun dengan menumpuk fragmen satu baris yang masing-masing dimulai dengan urutan backslash-backslash di awal baris. Spasi awal sebelum fragmen merupakan bagian dari indentasi, bukan konten, sehingga nilai string tepatnya adalah yang muncul setelah dua backslash hingga akhir baris, yang digabungkan dengan baris baru literal.
Mengapa gaya kurung K&R digunakan secara khusus?
-
Gaya K&R — kurung pembuka pada baris yang sama dengan konstruksi yang memperkenalkan blok — meminimalkan gangguan vertikal dan menjaga garis pandangan dari kondisi ke tubuh blok tetap pendek. Gaya ini juga menghindari bahaya tanda titik koma otomatis seperti dalam JavaScript, di mana alternatif kurung pembuka akan memperkenalkan masalah parsing yang tidak terkait. Zig mengikuti Go dan Rust dalam menetapkan gaya ini untuk menjaga permukaan bahasa tetap kompak.
Apakah formatter heuristik pernah salah dibandingkan dengan zig fmt sebenarnya?
-
Formatter berbasis regex dan segment tidak dapat mengikuti formatter berbasis parser pada kasus ekstrem — blok comptime, struktur anonim umum, dan blok terlabel memiliki aturan jarak yang bergantung pada konteks. Untuk sebagian besar penempatan harian (indentasi, penempatan kurung, jarak operator, koma di akhir), output heuristik tidak dapat dibedakan. Untuk output yang benar secara canonical sebelum commit, jalankan zig fmt secara lokal; alat di browser ini digunakan untuk perbaikan cepat, pra-ulasan kode, dan potongan kode yang ditempelkan ke dalam percakapan.
Zig Language Formatter 1
Instal Ekstensi Kami
Tambahkan alat IO ke browser favorit Anda untuk akses instan dan pencarian lebih cepat
恵 Papan Skor Telah Tiba!
Papan Skor adalah cara yang menyenangkan untuk melacak permainan Anda, semua data disimpan di browser Anda. Lebih banyak fitur akan segera hadir!
Alat Wajib Coba
Lihat semua Pendatang baru
Lihat semuaMemperbarui: Kita alat terbaru Keamanan (76 item)
