Fungsi alat ini
Go formatter menulis ulang kode sumber Go ke dalam satu gaya kanonis yang dipakai seluruh komunitas Go. Tempel sebuah file atau potongan kode dan hasilnya kembali dengan indentasi, spasi, pengelompokan import, serta field struct dan komentar yang rata ala gofmt.
Alat ini menjalankan gofmt asli dari toolchain Go yang dikompilasi ke WebAssembly. Tidak ada yang diperkirakan: yang Anda lihat di sini persis seperti yang akan ditulis go fmt, sehingga kode yang sudah dirapikan bisa di-commit tanpa menimbulkan diff di CI.
Cara menggunakannya
- Tempel kode Go, atau buka file
.go. - Kode yang sudah dirapikan muncul di sebelah kanan saat Anda mengetik.
- Pertahankan indentasi Tab untuk kode yang akan di-commit. Pilih 2 spasi atau 4 spasi jika kodenya akan dimasukkan ke dokumen, slide, atau situs yang menampilkan tab terlalu lebar.
- Salin atau unduh hasilnya.
Jika kode tidak bisa di-parse, alat ini menampilkan error pertama beserta baris dan kolomnya, misalnya expected ')', found '{', dan Anda bisa langsung melompat ke baris itu.
Contoh
Contohnya adalah program pendek yang dijejalkan ke baris sesedikit mungkin: import dipisahkan titik koma, struct dalam dua baris, dan fungsi tanpa spasi di sekitar operator. Setelah dirapikan:
- import menjadi blok dalam tanda kurung dengan satu package per baris;
- field struct ditaruh di barisnya masing-masing dan tipenya diratakan dalam satu kolom;
if u.Age<18{menjadiif u.Age < 18 {dengan isi blok di barisnya sendiri;- composite literal mendapat spasi setelah koma dan titik dua.
Apa yang diubah dan tidak diubah gofmt
gofmt hanya mengubah tata letak. gofmt tidak pernah mengganti nama identifier, mengubah urutan deklarasi, atau menghapus import yang tidak dipakai; pekerjaan itu milik alat seperti goimports dan go vet. gofmt juga mempertahankan pindah baris Anda jika memang bermakna, sehingga daftar argumen panjang yang Anda pecah ke beberapa baris tetap terpecah.
Komentar dipertahankan dan diberi indentasi ulang bersama kode di sekitarnya. Komentar di akhir baris pada baris-baris berurutan diratakan dalam satu kolom, sama seperti field struct.
Tips
- Merapikan kode adalah cara cepat menemukan kurung kurawal yang hilang: posisi error biasanya menunjuk baris pertama setelah kesalahan.
- Jalankan formatter sebelum membagikan kode di issue atau review. Reviewer lalu bisa fokus pada apa yang dilakukan kode, bukan pada tampilannya.
- Di editor Anda, aktifkan “format on save” dengan gopls agar file Anda selalu sama dengan output ini.
FAQ
› Apakah ini gofmt yang asli?
Ya. Formatter-nya adalah kode gofmt dari toolchain Go yang dikompilasi ke WebAssembly, sehingga output-nya sama persis byte demi byte dengan yang dicetak `gofmt` atau `go fmt` di mesin Anda.
› Apakah saya perlu klausa package?
Tidak. File lengkap paling baik, tetapi gofmt juga menerima daftar deklarasi atau beberapa pernyataan, yang praktis untuk potongan kode yang disalin dari postingan blog atau chat.
› Mengapa indentasi memakai tab?
gofmt selalu membuat indentasi dengan tab dan meratakan dengan spasi. Itulah konvensi Go, dan editor menampilkan tab dengan lebar apa pun yang Anda suka. Jika Anda butuh spasi untuk dokumen atau slide, pilih 2 atau 4 spasi dan hanya tab di awal baris yang diganti.
› Apakah kode saya diunggah?
Tidak. Modul WebAssembly diunduh sekali dan pemformatan berjalan secara lokal di browser Anda.