Fitur Utama Formatter Swift
- **Pembersihan satu klik** untuk indentasi, spasi, dan kurung dalam kode Swift
- **Ukuran indentasi yang dapat dikonfigurasi** melalui slider *Ukuran Indentasi* (1β8 spasi)
- **Kontrol Bungkus / Panjang Baris** untuk menjaga ekspresi panjang dalam lebar kolom pilihan Anda
- Mendukung file sumber `.swift` standar dan cuplikan yang ditempel
- Cocok untuk proyek **iOS, macOS, watchOS, tvOS, dan Swift sisi server**
- Menggunakan mesin gaya SwiftFormat di balik layar untuk keluaran Swift yang idiomatis
- Pemformatan idempoten β menjalankannya berkali-kali menghasilkan keluaran yang sama
- Tidak perlu akun β cukup tempel, format, dan salin hasil yang telah dibersihkan
π οΈ Cara Menggunakan Swift Formatter for swift-formatter
1. Tempel atau Unggah Kode Swift Anda
π₯ Tempel kode Swift langsung ke editor, atau seret-dan-lepas file `.swift`. Alat ini dioptimalkan untuk sumber Swift bergaya Xcode tipikal.
2. Atur Indentasi & Panjang Baris
π Gunakan slider **Ukuran Inden** untuk memilih berapa spasi setiap tingkat indentasi, dan konfigurasikan **Bungkus / Panjang Baris** untuk mengontrol di mana baris panjang harus dibungkus (atau setel ke `0` untuk menonaktifkan pemformatan berbasis bungkus).
3. Klik "Format"
β‘ Tekan tombol **Format** untuk menerapkan aturan gaya SwiftFormat. Formatter menormalkan indentasi, spasi di sekitar `:` dan operator, serta membungkus baris panjang sesuai pengaturan Anda.
4. Tinjau dan Salin Hasilnya
π Bandingkan versi asli dan yang diformat. Saat Anda puas dengan hasilnya, salin Swift yang telah diformat kembali ke Xcode, Swift Playground, atau komit Git Anda.
Spesifikasi Teknis
Mesin & Gaya Pemformatan
Alat ini mencerminkan konvensi SwiftFormat umum untuk menjaga basis kode Anda konsisten di seluruh file dan kontributor.
| Aspek | Perilaku | Catatan |
|---|---|---|
| Bahasa | Swift | Bekerja paling baik dengan file sumber Swift 5+. |
| Indentasi | Spasi per tingkat dapat dikonfigurasi | Dikendalikan oleh opsi **Ukuran Inden** (1β8). |
| Pembungkusan Baris | Kolom bungkus opsional | Dikendalikan oleh **Bungkus / Panjang Baris** (0β120; `0` = tanpa bungkus). |
| Spasi | Dinormalisasi di sekitar `:` dan operator | Meningkatkan keterbacaan dan konsistensi dalam tinjauan kode. |
| Keluaran Idempoten | Input sama β output sama | Aman dijalankan berkali-kali tanpa pergeseran pemformatan. |
Input & Batasan yang Didukung
Berfokus pada file sumber Swift dunia nyata yang digunakan dalam platform Apple dan proyek Swift sisi server.
| Parameter | Nilai / Perilaku | Catatan |
|---|---|---|
| Ekstensi file | .swift | File sumber Swift standar. |
| Tipe MIME | text/x-swift | Digunakan secara internal untuk deteksi editor dan dropzone. |
| Ukuran input maksimum | β 2 MB sumber | File yang sangat besar lebih baik diformat melalui SwiftFormat lokal di CI. |
| Ekstensi output | .swift | Konten yang diformat sebaiknya disimpan sebagai file sumber Swift. |
Validasi & Kesalahan
Formatter mengharapkan Swift yang valid secara sintaksis. Jika input tidak lengkap atau mengandung kesalahan sintaksis utama, mungkin gagal atau mengembalikan pesan kesalahan alih-alih output yang diformat.
Alternatif Baris Perintah dengan SwiftFormat
Ingin gaya yang sama di Xcode, CI, atau pre-commit hooks? Gunakan SwiftFormat langsung:
macOS (Homebrew)
Instal SwiftFormat via Homebrew
brew install swiftformatMenambahkan CLI `swiftformat` ke sistem Anda.
Format satu file Swift
swiftformat MyViewController.swiftMenulis ulang file di tempat menggunakan aturan SwiftFormat default.
Format seluruh proyek Xcode
swiftformat .Secara rekursif memformat semua file `.swift` di direktori saat ini.
Konfigurasi Tingkat Proyek
Gunakan konfigurasi kustom
swiftformat . --config .swiftformatTerapkan aturan spesifik tim yang disimpan dalam file konfigurasi `.swiftformat`.
Integrasikan dengan Git pre-commit
swiftformat . && git commitJalankan SwiftFormat sebelum setiap commit untuk menjaga cabang utama tetap bersih.
Kasus Penggunaan Praktis untuk Swift Formatter
Pengembangan Aplikasi iOS & macOS
Jaga kode UIKit, SwiftUI, dan Combine yang padat tetap mudah dibaca dan konsisten di seluruh cabang fitur.
- Standarisasi pemformatan pengontrol tampilan, model tampilan, dan layanan sebelum tinjauan kode.
- Bersihkan kode Swift catatan sementara atau prototipe sebelum menyalinnya ke target produksi.
- Sejajarkan indentasi dan pembungkusan hierarki tampilan SwiftUI yang kompleks.
struct ContentView: View {
var body: some View {
VStack {
Text("Hello")
Button("Tap me") {
print("Tapped")
}
}
}
}
Swift Sisi Server (Vapor, Hummingbird, dll.)
Buat penangan API dan kode perutean lebih mudah dipindai dan ditinjau.
- Format ulang deklarasi rute dan middleware agar rantai kompleks mudah diikuti.
- Bersihkan struct pengkodean/dekoding JSON dengan daftar properti panjang.
- Pastikan pembungkusan yang konsisten untuk panggilan SQL atau klien HTTP panjang dalam kode Swift.
app.get("hello") { req async throws -> String in
"Hello, world!"
}
Mengajar & Belajar Swift
Tunjukkan kepada siswa seperti apa Swift yang idiomatis dan kurangi 'gangguan gaya' dalam latihan.
- Normalisasikan kode Swift sebelum berbagi contoh dalam slide atau dokumentasi.
- Bersihkan kiriman siswa untuk fokus pada logika alih-alih spasi dan indentasi.
- Demonstrasikan bagaimana pemformatan yang baik meningkatkan keterbacaan tanpa mengubah perilaku.
func fibonacci(_ n: Int) -> Int {
if n < 2 { return n }
return fibonacci(n - 1) + fibonacci(n - 2)
}
β Frequently Asked Questions
βApa sebenarnya yang diubah oleh Swift Formatter ini?
πApa yang harus saya pilih untuk Bungkus / Panjang Baris?
π§ΉApakah ini pengganti SwiftLint?
πApakah aman menempelkan kode Swift produksi di sini?
β‘Bisakah saya menjalankan formatter ini secara otomatis di setiap komit?
Pro Tips
Setujui **Ukuran Indentasi** dan **Panjang Baris / Bungkus** tunggal dengan tim Anda, lalu pantulkan nilai-nilai tersebut baik di alat ini maupun dalam konfigurasi `.swiftformat` Anda.
Jalankan formatter pada pull request agar tinjauan kode fokus pada logika dan arsitektur alih-alih perdebatan spasi.
Gunakan formatter pada kode Swift yang dihasilkan (misalnya dari alat codegen) agar terlihat sebersih kode tulisan tangan Anda.
Gabungkan formatter ini dengan "Indentasi Ulang" Xcode hanya untuk penyesuaian lokal cepat; gunakan SwiftFormat di CI untuk mempertahankan gaya yang benar-benar konsisten.
Additional Resources
Other Tools
- Pemerindah CSS
- Pemerindah HTML
- Pemerindah Javascript
- Pemerindah PHP
- Pemilih Warna
- Ekstraktor Sprite
- Dekoder Base64
- Encoder Base64
- Pemformat Csharp
- Pemformat CSV
- Dockerfile Formatter
- Pemformat Elm
- Pemformat ENV
- Pemformat Go
- Pemformat GraphQL
- Pemformat HCL
- Pemformat INI
- Pemformat JSON
- Pemformat Latex
- Pemformat Markdown
- Pemformat ObjectiveC
- Php Formatter
- Pemformat Proto
- Pemformat Python
- Pemformat Ruby
- Pemformat Rust
- Pemformat Scala
- Pemformat Skrip Shell
- Pemformat SQL
- Pemformat SVG
- Pemformat TOML
- Typescript Formatter
- Pemformat XML
- Pemformat YAML
- Pemformat Yarn
- Pengecil CSS
- Html Minifier
- Javascript Minifier
- Pengecil JSON
- Pengecil XML
- Penampil Header HTTP
- PDF Ke Teks
- Penguji Regex
- Pemeriksa Peringkat SERP
- Pencarian Whois