在Xcode配置clangformat

第一步,通过终端安装clang-format

1、打开终端输入brew install clang-format

2、查看是否安装成功,在终端输入clang-format --version
打印clang-format version xxx说明安装成功

第二步,添加自动操作

1、打开系统软件自动操作如图

在这里插入图片描述

2、点击左上角导航栏的文件选择快速操作

在这里插入图片描述

3、打开快速操作以后,在左侧搜索搜索shell,出现以下运行Shell脚本

在这里插入图片描述

4、点击运行Shell脚本,将右侧位于任何应用程序改为位于Xcode,并勾选输出内容替换所选文本

在这里插入图片描述

5、将左侧运行Shell脚本拖入右侧空白处文件操作拖到这里,以构建您的工作流程

在这里插入图片描述

6、将以下脚本复制运行Shell脚本
# 需要添加脚本
export PATH=/usr/local/bin:$PATH
clang-format

在这里插入图片描述

7、按command + s保存脚本,将操作命名xcode_format点击存储

在这里插入图片描述

第三步,配置文件

1、在当前用户的根目录,放置一个.clangformat文件

终端输入cd ~/cd当前用户目录

输入touch ~/.clang-format创建.clang-format文件

2、配置clangformat可选项

查看clang-format可选项
工具(需要添加签名使用)
函数名详细地址 英文
函数名详细地址 中文

具体配置

# 工具 https://github.com/mapbox/XcodeClangFormat(需要添加签名使用)
# 函数名详细地址 英文 http://clang.llvm.org/docs/ClangFormatStyleOptions.html
# 函数名详细地址 中文 https://www.cnblogs.com/PaulpauL/p/5929753.html

# OC语言
Language: ObjC

# 基于LLVM格式
# BasedOnStyle: LLVM

# 对齐注释
AlignTrailingComments: true

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

# 用于缩进的列数
IndentWidth: 4

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

# OC的block嵌套参数换行
ObjCBreakBeforeNestedBlockParam: false

# switchcase缩进
IndentCaseLabels: true

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

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

#ContinuationIndentWidth: 0

# 赋值=对齐
AlignConsecutiveAssignments: false

# 声明参数对齐
AlignConsecutiveDeclarations: false

# 运算符位置
BreakBeforeBinaryOperators: None

# 如果为真(true, 三元运算符将被放置在换行后
BreakBeforeTernaryOperators: false

# 总是在逗号和对齐逗号跟冒号前把构造函数初始化换行
BreakConstructorInitializersBeforeComma: false

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

# 允许case在同一行
AllowShortCaseLabelsOnASingleLine: false

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

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

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

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

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

# []添加空格
SpacesInSquareBrackets: false

# ()添加空格
SpacesInParentheses : false

# @[]里面两边空格,默认true
SpacesInContainerLiterals: false

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

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

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

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

# 允许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
  # 缩进换行的大括号
  IndentBraces: true

第四步,在xcode使用

1、使用鼠标操作

使用command + A,选中需要格式化代码右键选中Services选择刚刚添加xcode_format即可代码进行格式
在这里插入图片描述

2、添加快捷键

打开系统偏好设置键盘快捷键选择App快捷键点击**+**按钮
在这里插入图片描述

应用程序选择Xcode菜单标题输入xcode_format(之前保存脚本文件名可以使用命令行open ~/Library/Services查看本文件),设置你要设置的快捷键,我这里使用的是command + shift + X
在这里插入图片描述

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注