Clang-tidy 文件:如何在多行中列出检查

Dar*_*nas 15 c++ clang-tidy

现在我有一个.clang-tidy包含大量检查列表的文件,它们都在一行中,如下所示:

Checks: '-*,bugprone-*,-bugprone-narrowing-conversions, cert-*, -cert-err58-cpp, clang-analyzer-*,cppcoreguidelines-*,-cppcoreguidelines-narrowing-conversions...'
Run Code Online (Sandbox Code Playgroud)

有没有办法在多行中列出每个检查(启用或禁用)以便于版本控制?

现在我切换自动换行,这有助于编辑,但在代码审查中很难区分。

我正在寻找这样的东西:

Checks:
'-*,'
'cert-*,etc-*,'
...
Run Code Online (Sandbox Code Playgroud)

dfr*_*fri 19

您可以删除单引号并在以>条目开头的换行逗号分隔列表中列出所有检查,构建.clang-tidy文件如下:

---
Checks: >
    -*,
    cert-*,
    etc-*,
    <additional checks ...>
...
Run Code Online (Sandbox Code Playgroud)

D30567 开始:[clang-tidy] 修复检查列表中处理非空格空格的问题,每个新行上的前导空格仅用于可读性,您可以选择任何一致数量的前导空格 (YAML)。

  • @dfrib 不,不可能在多行字符串的行之间执行“#”。这就是为什么我看到人们[完全在字符串之外评论每个检查](https://github.com/googleapis/google-cloud-cpp/blob/main/.clang-tidy)作为一种解决方法。我不喜欢它,它迫使我重复每张支票的名称,但这是迄今为止我发现的最好的方法。 (2认同)
  • 看起来确实 clang-tidy 的配置格式是没有经过太多思考就仓促出来的。它应该明确定义为一个序列!或者他们担心减号可能会让人感到困惑,因为我们在检查名称之前也可能有一个减号来禁用它? (2认同)