我有项目将 Clang-tidy 配置设置如下
set(CMAKE_CXX_CLANG_TIDY "clang-tidy;-checks=google-*,cppcoreguidelines-*;")
Run Code Online (Sandbox Code Playgroud)
但是,我注意到它正在检查甚至不在当前存储库中的所有文件,例如
/opt/ros/melodic/include/ros/console.h
Run Code Online (Sandbox Code Playgroud)
以及子模块的所有 .h/.hpp 文件...
我试图添加一个正则表达式来过滤目标 .h 文件,但无法让它工作......我已经为单个 .hpp 文件提供了绝对路径,但它仍在评估/opt/ros/melodic/include文件......
我可以举一个关于标题过滤器的例子吗??
如果 hpp 在过滤器中,我假设 clang-tidy 将检查相应的 cpp 文件。我对么?
我有几个项目,我想解析很多标题,但有几个标题我不想用 clang-tidy 解析
我的文件夹层次结构如下
一种\
B\
C\
coco.h
D\
E\
Run Code Online (Sandbox Code Playgroud)
我的项目在 C 和 D 文件夹中,我希望它们解析 B 下的所有标题,所以我的解决方案是 HeaderFilterRegex: 'B/*' 我想包含很多标题,所以我无法命名每个标题。
但是在 C 和 D 文件夹中有几个我想排除的标题(例如 coco.h)。
我尝试将 NO_LINT 放在包含 coco.h 的 cpp 中,但没有帮助,
我怎样才能做到这一点?
谢谢
我想-line-filter=在.clang-tidy文件中配置我的参数,而不是在生成命令的 cmake 源文件中。向LineFilter文件添加密钥只会让我出现“未知密钥”错误。这真的不通过配置文件支持吗?有其他选择吗?
我正在使用 clang-tidy 来检查我的代码库,但整个过程非常慢。有没有办法完全忽略头文件而不仅仅是抑制警告?正如您在这个示例中看到的,大量警告来自我的项目依赖项:
Suppressed 72958 warnings (72958 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用POSIX(扩展)正则表达式创建一个正则表达式,我可以在我的C程序代码中使用它.
具体来说,我想出了以下内容,但是,我想在匹配的表达式中排除"http"这个词.经过一些搜索,看起来POSIX并不像捕获特定字符串那样明显.我在下面的例子中使用了一个叫做"负面看起来"的东西(即(?!http :)).但是,我担心这可能只是POSIX以外的方言中定义的正则表达式可用的东西.是否允许否定前瞻?POSIX中是否允许使用逻辑NOT运算符(即!)?
工作正则表达式示例:
href|HREF|src[[:space:]]=[[:space:]]\"(?!http:)[^\"]+\"[/]
如果我不能像其他方言那样使用负面预测,我可以对上面的正则表达式做什么来过滤掉特定的单词"http:"?理想情况下,有没有任何方法没有逆逻辑,并最终在过程中创建一个荒谬的长正则表达式?(我上面的那个已经很久了,如果可能的话我宁愿看起来不那么混乱)
[注意:我已经在Stack Overflow中查阅了其他相关的主题,但最相关的主题似乎只是"一般地"提出这个问题,这意味着给出的答案并不一定意味着它们在另一个或两个主题中是POSIX风格的==> ,我已经看到了上面的 (?!insertWordToExcludeHere) 负面预测,但我担心它只适用于PHP.)
[注2:我将采取任何POSIX正则表达式措辞,任何帮助将不胜感激.有没有人建议过滤掉"http:"的正则表达式是什么样的,以及它如何适合我当前的正则表达式,取代(?!http :)?]
我希望clang格式不修改用于分隔功能的注释行。我认为这commentPragmas是正确的选择,但我找不到有关clang格式正则表达式格式的信息。
我试图commentPragmas: '^/\*-.*'捕获看起来像这样的分隔线
/*------------------------------------------------------------------*/
但是上述正则表达式无法正常工作...在哪里可以找到用于clang格式的正则表达式的语法?