SwiftFormatで快適にswift開発

swiftで開発する場合のformatについて書いておきます。 基本的に表記ずれなどをなくして、統一したいので入れておくといいでしょう。

SwiftFormat

SwiftFormatを使いましょう

SwiftFormat(https://github.com/nicklockwood/SwiftFormat/)

SwiftFormat/CLIのinstall

まず、プロジェクトごとにフォーマットを変えたいので、xcodeの設定にいれるのではなく、プロジェクト内での適用と考えます。

install

CocoaPodsでinstallしましょう。

pod 'SwiftFormat/CLI'

CocoaPodsでインストールをすると、下記の場所に格納されます。

${PODS_ROOT}/SwiftFormat/CommandLineTool/swiftformat

試しに実行してみましょう

cd プロジェクトのルートディレクトリ
Pods/SwiftFormat/CommandLineTool/swiftformat --version // とりあえずversionの確認
Pods/SwiftFormat/CommandLineTool/swiftformat プロジェクト/AppDelegate.swift

そのままデフォルトの設定(オプション指定なし)でフォーマットを行うと、Xcodeが自走生成したコードもフォーマット対象になってしまうので注意が必要です。 オプションをつけましょう。オプションはgitのリポジトリをみるといいでしょう。

buildする時にformatをかけましょう

Build PhasesにNew Run Script Phaseを追加します。

追加したScript Phaseに、SwiftFormatのコマンドを記述します。

"${PODS_ROOT}/SwiftFormat/CommandLineTool/swiftformat" . --exclude Carthage,Pods --trimwhitespace nonblank-lines --indent 2 --stripunusedargs closure-only --disable strongOutlets,trailingCommas