Об этом проекте

SwiftFormat — это библиотека кода и инструмент командной строки для переформатирования кода Swift на macOS, Linux или Windows. Помимо простой настройки пробелов, он может вставлять или удалять неявный `self`, удалять избыточные скобки и исправлять множество других отклонений от стандартных идиом Swift. Заявленная мотивация проекта: согласование общего стиля кода помогает совместной работе, но ручное соблюдение стиля утомительно и чревато ошибками. Автоматический форматтер позволяет командам сосредоточиться на поведении кода, а не на его оформлении. Способы использования: - Инструмент командной строки, запускаемый вручную или как часть цепочки сборки. - Расширение редактора Xcode, вызываемое через меню Editor > SwiftFormat. - Фаза сборки Xcode, выполняемая при каждой сборке. - Git pre-commit hook, форматирующий изменённые файлы перед коммитом. - Командный плагин Swift Package Manager (Swift 5.6+). - Интеграции для VSCode (через Run on Save), Sublime Text и Nova. - GitHub Actions, Danger на CI, Bazel, Docker и AppleScript. Варианты установки включают Homebrew (`brew install swiftformat`), Mint, Nix/nixpkgs, CocoaPods, бинарный артефакт-bundle в Package.swift или ручную сборку с помощью `swift build -c release`. Расширение Xcode доступно как cask Homebrew или из GitHub Releases. Базовое использование: `swiftformat .` — форматирует Swift-файлы в текущем каталоге. В README предупреждается, что эта команда перезаписывает файлы на месте, поэтому перед запуском следует закоммитить изменения; `--infer-options` может предложить настройки, соответствующие существующему стилю проекта. Поддерживается конвейер стандартного ввода/вывода, включая `--stdin-path` для указания контекста расположения файла. Конфигурация охватывает параметры, правила, версию Swift, файл конфигурации `.swiftformat`, glob-шаблоны, режим проверки (linting), коды ошибок, кэширование, заголовки файлов и форматирование Markdown. В README также есть FAQ, известные проблемы, «банка чаевых» и благодарности. Проект распространяется под лицензией MIT.