如何配置.clang-format跳过C++11中以LOGGING_INFO开头的代码行?
让clang-format自动跳过LOGGING_INFO代码块的格式化
你可以通过在.clang-format配置文件中添加正则匹配规则,让clang-format自动识别并跳过以LOGGING_INFO开头的代码块格式化,无需手动添加// clang-format指令。
具体配置步骤
- 打开项目根目录下的
.clang-format文件(无则新建) - 添加以下配置内容:
# 全局格式化开关默认开启 DisableFormat: false # 自定义正则匹配规则,跳过LOGGING_INFO代码块 Regexp: - Name: SkipLoggingInfo # 匹配从LOGGING_INFO(开始到对应的);结束的完整代码块 Pattern: 'LOGGING_INFO\([\s\S]*?\);' DisableFormat: true
配置说明
Pattern中的正则会匹配所有LOGGING_INFO(...)形式的代码块,包括跨多行的情况DisableFormat: true告诉clang-format对匹配到的内容跳过格式化,保留你手动设置的排版- 如果你的
LOGGING_INFO调用有特殊格式(比如嵌套括号),可以微调正则表达式确保准确匹配
注意事项
- 该配置需要clang-format 10及以上版本支持,若使用旧版本建议升级
- 验证配置是否生效:运行clang-format后检查
LOGGING_INFO代码块是否保持了你想要的格式
内容的提问来源于stack exchange,提问作者Jaden
相关产品推荐
相关产品推荐

