3

是否可以设置 clang-tidy 以输出它发现的.clang-format文件定义的源代码格式的问题。基本上,告诉你如果在文件上运行 clang-format 会做什么样的改变。类似于以下内容:

Line 23: improper indentation, 4 spaces should be used

Line 47: opening brace for loops should be on the same line

如果没有,是否可以编写一个自定义支票,这可以为我做到这一点?

4

1 回答 1

1

使用 clang-tidy 无法做到这一点,因为它将代码解析为 AST 并且不关心格式。

您可以使用clang-format-output-replacements-xml选项。

xml 输出会告诉您您想要什么(发生了什么变化以及在哪里),但不要期望人类读者会得到很好的输出。

样本:

<?xml version='1.0'?>
<replacements xml:space='preserve' incomplete_format='false'>
<replacement offset='337' length='8'>&#13;&#10;&#13;&#10;  </replacement>
</replacements>
于 2018-08-20T10:48:40.240 回答