Swift 實(shí)用工具 — SwiftLint

前言

SwiftLint 是一個(gè)實(shí)用工具,用于實(shí)現(xiàn) Swift 的風(fēng)格。 在 Xcode 項(xiàng)目構(gòu)建階段,集成 SwiftLint 很簡(jiǎn)單,構(gòu)建階段會(huì)在編譯項(xiàng)目時(shí)自動(dòng)觸發(fā) SwiftLint。

遺憾的是,目前無(wú)法輕松地將 SwiftLintSwift Packages 集成,Swift Packages 沒(méi)有構(gòu)建階段,也無(wú)法自動(dòng)運(yùn)行腳本。

本文介紹了如何在 Xcode 中使用 post action 腳本在成功編譯 Swift Package 后自動(dòng)觸發(fā) SwiftLint。

SucceedsPostAction.sh

SucceedsPostAction.sh 是一個(gè) bash 腳本,用作 Xcode 中的 “Succeeds” 發(fā)布操作。當(dāng)你編譯一個(gè) Swift 包時(shí),這個(gè)腳本會(huì)自動(dòng)觸發(fā) SwiftLint。

安裝

  1. 在 Mac 上下載腳本 SucceedsPostAction.sh。

  2. 確保腳本具有適當(dāng)?shù)臋?quán)限,即運(yùn)行 chmod 755 SucceedsPostAction.sh。

  3. 如果要使用自定義 SwiftLint 規(guī)則,請(qǐng)將 .swiftlint.yml 文件添加到腳本旁邊。

  4. 啟動(dòng) Xcode 13.0 或更高版本

  5. 打開(kāi) Preferences > Locations 并確保 Command Line Tools 設(shè)置為 Xcode 版本

  6. 打開(kāi) Preferences > Behaviors > Succeeds

  7. 選擇腳本 SucceedsPostAction.sh

image

就是這樣:每次編譯 Swift 包時(shí),SucceedsPostAction.sh 都會(huì)運(yùn)行 SwiftLint。

Demo

image

限制

在 Xcode 中運(yùn)行的 post action 腳本無(wú)法向 Xcode 構(gòu)建結(jié)果添加日志、警告或錯(cuò)誤。因此,SucceedsPostAction.sh 在 Xcode 中以新窗口的形式打開(kāi)一個(gè)文本文件,其中包含 SwiftLint 報(bào)告列表。沒(méi)有深度集成可以輕松跳轉(zhuǎn)到 SwiftLint 警告。

Swift 5.6

請(qǐng)注意,由于SE-0303: Package Manager Extensible Build Tools,Swift 5.6(在撰寫(xiě)本文時(shí)尚不可用)可能會(huì)有所幫助。集成 SE-0303 后,不再需要此腳本。

下載

您可以在 Github 上找到最新版本的腳本 SucceedsPostAction.sh。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容