1. 安装 XcodeClangFormat

# 安装clang-format
$ brew install clang-format

# 查看是否安装成功
$ clang-format --version
$ brew list
  • 安装成功如下:
  • 查看安装是否成功的方式一:
  • 查看安装是否成功的方式二:

2. 创建格式化文件.clang-format 并编辑

# 打开根目录
$ open ~

# 创建.clang-format文件
$ touch .clang-format
  • 打开隐藏文件的快捷键: command + shift + . 如下:
  • .clang-format 文件的内容如下:
# 工具 https://github.com/mapbox/XcodeClangFormat
# 函数名详细地址 英文 http://clang.llvm.org/docs/ClangFormatStyleOptions.html
# 函数名详细地址 中文 https://www.cnblogs.com/PaulpauL/p/5929753.html

# 基于样式
BasedOnStyle: LLVM

# 对齐注释
AlignTrailingComments: true

# 指针和引用的对齐方式
PointerAlignment: Right

# 用于缩进的列数
IndentWidth: 4

# 针对OC的block的缩进宽度
ObjCBlockIndentWidth: 4

# 括号后加空格
SpaceAfterCStyleCast: false

# switch的case缩进
IndentCaseLabels: true

# OC里面,在@property后加空格
ObjCSpaceAfterProperty: true

# OC里面,在Protocol前后加空格
ObjCSpaceBeforeProtocolList: true

# 单行注释前的空格数
SpacesBeforeTrailingComments: 1

# 连续的空行保留几行
MaxEmptyLinesToKeep: 1

# 保留block里面的空行
KeepEmptyLinesAtTheStartOfBlocks: false

# 每行字符的限制,0表示没有限制
ColumnLimit: 0

# []中添加空格
SpacesInSquareBrackets: false

# ()中添加空格
SpacesInParentheses : false

# 容器类前添加空格
SpacesInContainerLiterals: true

# 赋值运算符前加空格
SpaceBeforeAssignmentOperators: true

# 在空括号中加空格
SpaceInEmptyParentheses: false

# 在<>中间插入空格
SpacesInAngles: false

# 换行的时候对齐操作符
AlignOperands: true

# 括号中的(),{},[]代码对齐方式
#AlignAfterOpenBracket: Align

#ContinuationIndentWidth: 0

# 赋值=对齐
AlignConsecutiveAssignments: false

# 声明参数对齐
AlignConsecutiveDeclarations: false

# 运算符位置
BreakBeforeBinaryOperators: None

# 允许短的函数放在同一行
#AllowShortFunctionsOnASingleLine: None

# 允许case在同一行
AllowShortCaseLabelsOnASingleLine: false

# 允许if在同一行
AllowShortIfStatementsOnASingleLine: true

# 允许while在同一行
AllowShortLoopsOnASingleLine: false

# 允许将简单的语句块放到同一行
AllowShortBlocksOnASingleLine: false

#缩进函数名
IndentWrappedFunctionNames: false

# 形参 如果为false要么都在同一行,要么各有一行
BinPackParameters: false

# 实参 如果为false要么都在同一行,要么各有一行
BinPackArguments: false

# 大括号换行
BreakBeforeBraces: Attach
BraceWrapping:
  # class定义后面
  AfterClass: true
  # 控制语句后面
  AfterControlStatement: false
  # enum定义后面
  AfterEnum: false
  # 函数定义后面
  AfterFunction: false
  # 命名空间定义后面
  AfterNamespace: false
  # struct定义后面
  AfterStruct: false
  # union定义后面
  AfterUnion: false
  # catch之前
  BeforeCatch: false

3. 使用.clang-format文件

3.1 方式一:快捷键

  • 设置快捷键, 系统偏好设置->键盘->快捷键->App 快捷键->加号
    • 去设置中找到键盘
    • 选中app快捷键
    • 设置快捷键

3.2 方式二:添加自动化服务

  • 再启动台中找到自动操作
  • 选择快速操作
  • 将shell拖拽到右侧
  • 添加以下内容并勾选
export PATH=/usr/local/bin:$PATH
clang-format

  • 保存退出,起一个名字:如:代码格式化

4. 在代码中使用.clang-format

  • 方式一:
    • 打开Xcode使用,选中代码右键查看上一步骤创建的脚本
    • 格式化之后的效果
  • 方式二:
    • 打开xcode,选中代码,按住刚刚自己设置的快捷键:command + X ,即可

5. 查看格式化之后的文件

  • 文件位置
open ~/Library/Services

6. 参考文档