nicklockwood/SwiftFormat
一款自动统一 Swift 代码风格的命令行工具与 Xcode 扩展。
- Star
- 8,954
- Fork
- 730
- 未关闭 Issue
- 289
- 最近提交
- 16小时前
这是什么?
SwiftFormat 是一个用于重新格式化 Swift 代码的代码库与命令行工具,支持 macOS、Linux 和 Windows。除了调整空白字符,它还能插入或移除隐式的 self、去掉多余括号,并修正许多不符合 Swift 惯用写法的代码。
它解决的是团队统一代码风格时手动检查费时且容易产生分歧的问题。格式化行为由 150 多条规则和一组选项控制,可通过命令行参数、.swiftformat 配置文件,或源码注释中的指令进行设置。lint 模式只报告不合规的地方而不修改文件,适合用于 CI 检查。
它可以在终端中运行,也可以作为 Swift Package Manager 插件、Xcode 构建阶段脚本或 Xcode 源码编辑器扩展使用,并支持通过 Homebrew、Mint、Nix、Docker 和 GitHub Actions 安装。
核心功能
- 01自动添加或移除隐式 self,并去掉多余括号。
- 02提供 150 多条格式化规则,可单独启用或禁用。
- 03通过 .swiftformat 配置文件管理项目设置,支持按目录覆盖。
- 04提供 lint 模式,只报告问题而不修改文件。
- 05可集成到 Xcode、Swift Package Manager、Git pre-commit 钩子和 GitHub Actions 中。
适用场景
- 在团队多个仓库中统一 Swift 代码风格。
- 在 CI 中运行格式检查,拦截未格式化的 Pull Request。
- 保存或提交代码时自动格式化 Swift 文件。
- 在 Xcode 项目构建过程中对 Swift 代码进行格式化。
快速上手
- 1
通过 Homebrew 安装命令行工具
brew install swiftformat - 2
格式化当前目录中的 Swift 文件
swiftformat .
使用前须知
- 运行 swiftformat . 会直接覆盖当前目录中的 Swift 文件,因此请先将更改提交到版本控制中。
收录于专题
标签
常见问题
- SwiftFormat 是什么?
- 一款自动统一 Swift 代码风格的命令行工具与 Xcode 扩展。 SwiftFormat 是一个用于重新格式化 Swift 代码的代码库与命令行工具,支持 macOS、Linux 和 Windows。除了调整空白字符,它还能插入或移除隐式的 self、去掉多余括号,并修正许多不符合 Swift 惯用写法的代码。
- SwiftFormat 可以免费使用吗?用的什么许可证?
- SwiftFormat 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- SwiftFormat 还在维护吗?
- 活跃维护中。SwiftFormat 最近一次提交是在 2026年11月6日。
- SwiftFormat 适合用来做什么?
- 在团队多个仓库中统一 Swift 代码风格。 在 CI 中运行格式检查,拦截未格式化的 Pull Request。 保存或提交代码时自动格式化 Swift 文件。 在 Xcode 项目构建过程中对 Swift 代码进行格式化。
- SwiftFormat 怎么安装和运行?
- 通过 Homebrew 安装命令行工具: brew install swiftformat 格式化当前目录中的 Swift 文件: swiftformat .
- 在哪里获取 SwiftFormat?
- 源代码和安装说明在 GitHub 上:https://github.com/nicklockwood/SwiftFormat
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
Black 是一款风格固定、结果确定的 Python 代码格式化工具,直接改写文件并尽量产生最小差异。
4.2万+41 本周2967PythonMIT维护活跃更新于 3天前
一款 Python 代码格式化工具,可按可配置的风格自动重排源代码。
1.4万915PythonApache-2.0更新于 18小时前
一个快速的命令行工具,通过 .ls-lint.yml 配置文件检查项目中目录和文件的命名规范。
2434+1 本周46GoMIT维护活跃更新于 昨天
用 Rust 编写的极速 Python 代码检查与格式化工具,内置 900 多条规则。
5.1万+236 本周2599RustMIT维护活跃更新于 15小时前