| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- ---
- # clang-format 配置文件
- # 用于防止 proto 文件自动换行
- # ColumnLimit: 列宽限制
- # 设置为 0 表示不限制列宽,不会因为行太长而自动换行
- # 防止原本写在一行的代码被格式化工具强制换行
- # 例如:message UserAddReq { UserVo vo = 1; } 会保持在一行,不会被拆成多行
- ColumnLimit: 0
- # Language: 指定文件类型
- # 设置为 Proto 表示这是 Protocol Buffers 文件格式
- # clang-format 会根据此设置应用相应的格式化规则
- Language: Proto
- # IndentWidth: 缩进宽度
- # 设置每次缩进使用 2 个空格
- # 例如:message 内的字段会缩进 2 个空格
- IndentWidth: 2
- # UseTab: 是否使用 Tab 字符
- # 设置为 Never 表示不使用 Tab,只使用空格进行缩进
- # 这样可以保证在不同编辑器和环境下显示一致
- UseTab: Never
- # TabWidth: Tab 字符的宽度
- # 当 UseTab 为 Never 时,此选项主要用于处理已存在的 Tab 字符
- # 设置为 2 表示如果遇到 Tab 字符,将其视为 2 个空格宽度
- TabWidth: 2
- # BinPackArguments: 函数参数打包
- # 设置为 true 表示尽量将函数参数放在同一行,而不是每个参数一行
- # 例如:rpc UserAdd(UserVo) returns (UserVo); 会保持在一行
- BinPackArguments: true
- # BinPackParameters: 函数参数列表打包
- # 设置为 true 表示尽量将参数列表放在同一行,避免不必要的换行
- # 与 BinPackArguments 配合使用,确保参数紧凑排列
- BinPackParameters: true
- # BreakBeforeBraces: 大括号前的换行规则
- # 设置为 Attach 表示大括号紧跟在上一行末尾,不单独换行
- # 例如:message UserVo { 而不是 message UserVo\n{
- BreakBeforeBraces: Attach
- # BreakStringLiterals: 是否允许拆分字符串字面量
- # 设置为 false 表示不允许将长字符串拆分成多行
- # 保持字符串在一行内,即使字符串很长
- BreakStringLiterals: false
- # SpacesBeforeTrailingComments: 行尾注释前的空格数
- # 设置为 1 表示在代码和行尾注释之间保留 1 个空格
- # 例如:string username = 4; // 用户名(username 和 // 之间有一个空格)
- SpacesBeforeTrailingComments: 1
- # MaxEmptyLinesToKeep: 保留的最大连续空行数
- # 设置为 1 表示最多保留 1 个连续空行
- # 超过 1 个的连续空行会被合并为 1 个,保持代码紧凑
- MaxEmptyLinesToKeep: 1
|