在 Xcode 编辑代码后用 git 提交时,如果空行含有白字符(空格或tab),会有如下提示:

space-in-empty-line

那么如何能自动删除空白行开头的空格呢?

  1. 编辑时自动删除

Xcode 中, 依次打开 [Preferences... -> Text Editing -> Editing -> While Editing],勾选两个选项:

xcode-while-editing

然而以上设置只对在编辑过程中出现的空白行中的空格起作用,对于已经存在的文件不会起作用。

  1. 命令行删除

那对已经存在的文件,可以通过在 Terminal 中执行命令来修改,比如修改所有 Swift/Objective-C 的代码文件:

1
2
3
cd <folder of your project>

find . -type f \( -iname "*.swift" -o -iname "*.h" -o -iname "*.m" \) -exec sed -i -e "s/^\( \{1,99\}\)*$//g" {} \;
  1. code format 工具

可以在每次项目编译时统一处理代码格式。比如通过 swiftlint:

xcode-with-switlint

关于具体配置参考swiftlint的文档。