📐善用 Xcode 內建的 swift-format 減少團隊溝通成本
Xcode 16 起已內建 swift-format。透過事先決定好的規則自動整理程式碼格式,協助團隊在 code review 時把重點放在程式邏輯,而不是耗費在修正格式上。
程式碼的格式是工程師最不該花時間手動調整的事情。比如說縮排要多少、某處多了空格、這邊該不該換行。應該指定好規則,交給電腦自動完成。
針對 Swift 專案,我以前愛用的是 Nick Lockwood 的 SwiftFormat,並且在 2020 年寫過一篇推坑文。
後來,Apple 官方推出了 swift-format(名稱很像,只差個 -,別搞錯了)。一開始是作為一個外部工具,用指令呼叫。
Xcode 一直到 16.0 才開始內建 swift-format。能夠自動套用格式到當前檔案,快速鍵是 Ctrl + Shift + I。
使用 swift format 指令
在 swift-format 還沒整合進 Xcode 以前,我們可以透過 homebrew 來安裝:
brew install swift-format
並且透過 swift-format 指令來使用。
例如,以下指令會把當前目錄與子目錄的所有 Swift 檔都套用格式:
swift-format . -i -r
提醒:第一次執行可能會產生大量的變更,最好先在乾淨的 git 狀態進行。
而在 Xcode 16 以後,我們可以用 swift format 指令,注意不需要 -。