CLANG 格式:禁用宏的格式设置
clang-format: disable formatting for macros?
我正在使用 clang-format 作为我的代码库的自动格式化工具。但它的一些功能困扰着我。
例如,我不希望它格式化我的宏定义,因为大多数时候,手动格式化它们更清楚。但是我不知道如何以 clang 格式禁用它。
另一个小问题是指针对齐。有时,很明显要向左对齐,有时向右对齐。所以我宁愿用手做。但是从 clang 格式禁用它似乎是不可能的?
对这些问题有什么帮助吗?
您可以将宏包装在
// clang-format off
#define ...
...
// clang-format on
要避免手动编辑每个文件,您可以使用正则表达式
search: ^([ t]*#[ t]*define[ t]+.+?\r?n(?:.*?\r?n)*.*?r?n)
replace: // clang-format offrn$1// clang-format onrn
例如,在记事本++中,Ctrl + Shift+ F - "在文件中查找 - "在文件中替换"。
到目前为止(直到 v11),无法禁用指针对齐。您可以设置样式,也可以派生样式(clang-format
将分析文件中最常见的&
和*
对齐方式,并将使用它)。
相关文章:
- 如何以叮当格式设置评论的行长?
- Vulkan 中的动态顶点缓冲区格式设置
- 如何将多种语言设置放在单个 .clang 格式文件中
- 如何设置叮当格式的注释编译指示,以免触及多行doxygen注释?
- 如何禁用影响宏的clang格式设置
- 保证最大输出长度为双精度,并设置默认输出格式的精度
- 如何编辑格式设置以增加换行长度?
- MinGW中的数字格式设置更改
- CLANG 格式:禁用宏的格式设置
- 如何使用IOStream存储格式设置?
- 创建以 C 格式设置 (MFC) 格式的字符串
- 如何在C++中将文件编码格式设置为UTF8
- 使用printf样式的格式设置std::字符串的内容
- 将字符串"DDMMYY HH:MM"的格式设置为"YY-MM-DD HH:MM"
- 将双精度值的格式设置为小数点后 1 位
- 使用 Boost 实现更好的 XML 格式设置
- 正在将格式设置从一个流复制到另一个流
- 在<iomanip>《流血事件》中使用C++进行格式设置
- 以字符串形式返回整数值以进行日期格式设置
- 使用 Boost JSON 解析器时出现 JSON 格式设置错误