Tính năng Chính của Swift Formatter
- **Dọn dẹp một cú nhấp** thụt lề, khoảng cách và dấu ngoặc trong mã Swift
- **Kích thước thụt lề có thể cấu hình** qua thanh trượt *Kích thước Thụt lề* (1–8 khoảng trắng)
- **Kiểm soát Ngắt dòng / Độ dài Dòng** để giữ các biểu thức dài trong phạm vi chiều rộng cột ưa thích của bạn
- Hỗ trợ các tệp nguồn `.swift` tiêu chuẩn và các đoạn mã được dán
- Tuyệt vời cho các dự án **iOS, macOS, watchOS, tvOS và Swift phía máy chủ**
- Sử dụng động cơ kiểu SwiftFormat ẩn sau để tạo đầu ra Swift chuẩn
- Định dạng bất biến – chạy nhiều lần vẫn giữ nguyên kết quả đầu ra
- Không cần tài khoản – chỉ cần dán, định dạng và sao chép kết quả đã được làm sạch
🛠️ Cách Sử Dụng Công Cụ Định Dạng Swift for swift-formatter
1. Dán hoặc Tải Lên Mã Swift Của Bạn
📥 Dán trực tiếp mã Swift vào trình soạn thảo, hoặc kéo-thả tệp `.swift`. Công cụ được tối ưu cho các nguồn Swift kiểu Xcode thông thường.
2. Thiết Lập Thụt Lề & Độ Dài Dòng
📏 Sử dụng thanh trượt **Kích Thước Thụt Lề** để chọn số khoảng trắng cho mỗi cấp thụt lề, và cấu hình **Ngắt Dòng / Độ Dài Dòng** để kiểm soát nơi các dòng dài sẽ được ngắt (hoặc đặt thành `0` để tắt định dạng dựa trên ngắt dòng).
3. Nhấn "Định Dạng"
⚡ Nhấn nút **Định Dạng** để áp dụng các quy tắc kiểu SwiftFormat. Công cụ chuẩn hóa thụt lề, khoảng trắng quanh `:` và các toán tử, và ngắt các dòng dài theo cài đặt của bạn.
4. Xem Xét và Sao Chép Kết Quả
🔍 So sánh phiên bản gốc và phiên bản đã định dạng. Khi hài lòng với kết quả, sao chép mã Swift đã định dạng trở lại Xcode, Swift Playground, hoặc commit Git của bạn.
Thông Số Kỹ Thuật
Động Cơ & Phong Cách Định Dạng
Công cụ phản ánh các quy ước SwiftFormat phổ biến để giữ cho codebase của bạn nhất quán qua các tệp và người đóng góp.
| Khía cạnh | Hành vi | Ghi chú |
|---|---|---|
| Ngôn ngữ | Swift | Hoạt động tốt nhất với các tệp nguồn Swift 5+. |
| Thụt lề | Có thể cấu hình khoảng trắng mỗi cấp | Được kiểm soát bởi tùy chọn **Kích Thước Thụt Lề** (1–8). |
| Ngắt Dòng | Cột ngắt tùy chọn | Được kiểm soát bởi **Ngắt Dòng / Độ Dài Dòng** (0–120; `0` = không ngắt). |
| Khoảng trắng | Chuẩn hóa quanh `:` và toán tử | Cải thiện khả năng đọc và tính nhất quán trong các đánh giá mã. |
| Đầu Ra Bất Biến | Đầu vào giống nhau → đầu ra giống nhau | An toàn để chạy nhiều lần mà không làm trôi định dạng. |
Đầu Vào Được Hỗ Trợ & Giới Hạn
Tập trung vào các tệp nguồn Swift thực tế được sử dụng trong các dự án nền tảng Apple và Swift phía máy chủ.
| Tham số | Giá trị / Hành vi | Ghi chú |
|---|---|---|
| Phần mở rộng tệp | .swift | Tệp nguồn Swift tiêu chuẩn. |
| Loại MIME | text/x-swift | Được sử dụng nội bộ để phát hiện trình soạn thảo và vùng thả. |
| Kích thước đầu vào tối đa | ≈ 2 MB mã nguồn | Các tệp rất lớn nên được định dạng tốt hơn qua SwiftFormat cục bộ trong CI. |
| Phần mở rộng đầu ra | .swift | Nội dung đã định dạng tốt nhất nên được lưu dưới dạng tệp nguồn Swift. |
Xác thực & Lỗi
Trình định dạng mong đợi Swift hợp lệ về cú pháp. Nếu đầu vào không hoàn chỉnh hoặc chứa lỗi cú pháp nghiêm trọng, nó có thể thất bại hoặc trả về thông báo lỗi thay vì đầu ra đã định dạng.
Lựa chọn Thay thế Dòng lệnh với SwiftFormat
Muốn có cùng phong cách trong Xcode, CI hoặc hook pre-commit? Sử dụng SwiftFormat trực tiếp:
macOS (Homebrew)
Cài đặt SwiftFormat qua Homebrew
brew install swiftformatThêm CLI `swiftformat` vào hệ thống của bạn.
Định dạng một tệp Swift duy nhất
swiftformat MyViewController.swiftViết lại tệp tại chỗ bằng các quy tắc SwiftFormat mặc định.
Định dạng toàn bộ dự án Xcode
swiftformat .Định dạng đệ quy tất cả các tệp `.swift` trong thư mục hiện tại.
Cấu hình Cấp độ Dự án
Sử dụng cấu hình tùy chỉnh
swiftformat . --config .swiftformatÁp dụng các quy tắc cụ thể của nhóm được lưu trong tệp cấu hình `.swiftformat`.
Tích hợp với Git pre-commit
swiftformat . && git commitChạy SwiftFormat trước mỗi lần commit để giữ nhánh chính của bạn sạch sẽ.
Trường hợp Sử dụng Thực tế cho Trình định dạng Swift
Phát triển Ứng dụng iOS & macOS
Giữ cho mã UIKit, SwiftUI và Combine dễ đọc và nhất quán trên các nhánh tính năng.
- Chuẩn hóa định dạng của view controller, view model và service trước khi review mã.
- Dọn dẹp mã Swift nháp hoặc nguyên mẫu trước khi sao chép vào mục tiêu sản xuất.
- Căn chỉnh thụt lề và ngắt dòng của hệ thống phân cấp view SwiftUI phức tạp.
struct ContentView: View {
var body: some View {
VStack {
Text("Hello")
Button("Tap me") {
print("Tapped")
}
}
}
}
Swift Phía Máy Chủ (Vapor, Hummingbird, v.v.)
Giúp mã xử lý API và định tuyến dễ quét và review hơn.
- Định dạng lại các route và khai báo middleware để chuỗi phức tạp dễ theo dõi.
- Dọn dẹp các struct mã hóa/giải mã JSON với danh sách thuộc tính dài.
- Đảm bảo ngắt dòng nhất quán cho các lệnh SQL hoặc HTTP client dài trong mã Swift.
app.get("hello") { req async throws -> String in
"Hello, world!"
}
Dạy & Học Swift
Cho học sinh thấy Swift chuẩn mực trông như thế nào và giảm 'nhiễu kiểu' trong bài tập.
- Chuẩn hóa mã Swift trước khi chia sẻ ví dụ trong slide hoặc tài liệu.
- Làm sạch bài nộp của học sinh để tập trung vào logic thay vì khoảng cách và thụt lề.
- Minh họa cách định dạng tốt cải thiện khả năng đọc mà không thay đổi hành vi.
func fibonacci(_ n: Int) -> Int {
if n < 2 { return n }
return fibonacci(n - 1) + fibonacci(n - 2)
}
❓ Frequently Asked Questions
❓Swift Formatter này thực sự thay đổi gì?
📏Tôi nên chọn gì cho Ngắt dòng / Độ dài dòng?
🧹Đây có phải thay thế cho SwiftLint?
🔒Có an toàn khi dán mã Swift sản xuất ở đây không?
⚡Tôi có thể chạy formatter này tự động trên mỗi commit không?
Pro Tips
Thống nhất với nhóm về một **Kích Thước Thụt Lề** và **Độ Dài Dòng / Ngắt Dòng** duy nhất, sau đó phản ánh các giá trị đó cả trong công cụ này và trong cấu hình `.swiftformat` của bạn.
Chạy trình định dạng trên các yêu cầu kéo để giữ cho việc xem xét mã tập trung vào logic và kiến trúc thay vì tranh luận về khoảng cách.
Sử dụng trình định dạng trên mã Swift được tạo (ví dụ: từ các công cụ tạo mã) để nó trông sạch sẽ như mã bạn viết tay.
Kết hợp trình định dạng này với tính năng “Thụt Lề Lại” của Xcode chỉ để điều chỉnh nhanh cục bộ; sử dụng SwiftFormat trong CI để duy trì một phong cách thực sự nhất quán.
Additional Resources
Other Tools
- Bộ Làm Đẹp CSS
- Bộ Làm Đẹp HTML
- Bộ Làm Đẹp Javascript
- Bộ Làm Đẹp PHP
- Bộ Chọn Màu
- Bộ Trích Xuất Sprite
- Bộ Giải Mã Base64
- Bộ Mã Hóa Base64
- Bộ Định Dạng Csharp
- Bộ Định Dạng CSV
- Dockerfile Formatter
- Bộ Định Dạng Elm
- Bộ Định Dạng ENV
- Bộ Định Dạng Go
- Bộ Định Dạng GraphQL
- Bộ Định Dạng HCL
- Bộ Định Dạng INI
- Bộ Định Dạng JSON
- Bộ Định Dạng Latex
- Bộ Định Dạng Markdown
- Bộ Định Dạng ObjectiveC
- Php Formatter
- Bộ Định Dạng Proto
- Bộ Định Dạng Python
- Bộ Định Dạng Ruby
- Bộ Định Dạng Rust
- Bộ Định Dạng Scala
- Bộ Định Dạng Tập Lệnh Shell
- Bộ Định Dạng SQL
- Trình Định Dạng SVG
- Trình Định Dạng TOML
- Typescript Formatter
- Trình Định Dạng XML
- Trình Định Dạng YAML
- Trình Định Dạng Yarn
- Bộ Thu Nhỏ CSS
- Html Minifier
- Javascript Minifier
- Bộ Thu Nhỏ JSON
- Trình Thu Nhỏ XML
- Trình Xem Tiêu Đề HTTP
- PDF Sang Văn Bản
- Bộ Kiểm Tra Regex
- Bộ Kiểm Tra Xếp Hạng SERP
- Tra Cứu Whois