💭
Xcodeビルド時にswift-formatを自動実行
はじめに
Xcodeでビルドする時にapple純正のコード整形ツールapple/swift-fomartを自動で実行し、結果をイシューナビゲーターに表示する方法を説明します!
私の環境ではつまづいた部分があったので、その点も説明します。
筆者について
パスワード管理アプリをリリースしました🚀🚀🚀
大切な情報を安全に、そして簡単に管理できるアプリです。
普段パスワードを忘れがちな方、セキュリティを強化したい方にぴったりのツールです。
ぜひお試しください!
環境
- Xcode15.2
手順
swift-formatをインストール
Homebrew
でインストール
brew install swift-format
Run Script Phaseに処理を追加
PROJECCT > TARGETS > "project file" > Build Phases > + > New Run Script Phase
Run Scriptの項目が追加されます。
ここに以下の処理を追加します。
# swift-format
if which swift-format >/dev/null; then
swift-format lint --recursive .
else
echo "warning: swift-format not installed"
fi
Based on dependencies analysis
のチェックは外しておきます。
さて、ここで一旦ビルドしてみましょう。
環境によっては期待通りイシューナビゲーターに警告が表示されるかもしれません。
表示された方はここで終わりです。
お疲れ様です🍵
私の環境はというと。。
イシューナビゲーターに警告が表示されませんでした。。
色々調べたところENABLE_USER_SCRIPT_SANDBOXING
の設定が悪さをしていることがわかりました。
ENABLE_USER_SCRIPT_SANDBOXINGを無効
PROJECCT > TARGETS > "project file" > Build Settings > Build Options > User Script Sandboxing を"NO"に変更
ではもう一度ビルドしてみましょう。
すると。。
無事にイシューナビゲーターに警告が表示されました!
Discussion