强制 clang-format 尊重 doxygen 块注释
Force clang-format to respect doxygen block comments
我在 C/C++ 代码中使用长块 C 风格的 Doxygen 注释。这是 http://www.doxygen.nl/manual/docblocks.html 上列出的样式 #4,看起来像这样(运行 最多 80 个字符)...
/**************************************************************************//**
* \file
* \date 2017-01-02
* \author Alex Hogen
******************************************************************************/
如果我对它进行 运行 clang-format,它 在两个正斜杠之间插入一个 space,所以它看起来像这样愚蠢....
/**************************************************************************/ /**
* \file
* \date 2017-01-02
* \author Alex Hogen
******************************************************************************/
- 我已将
SpacesBeforeTrailingComments
设置为 2,所以这不是问题所在。
- 尝试了
CommentPragmas
正则表达式 \/\*+\/\/\*+
。
- 尝试了
CommentPragmas
正则表达式 /\*(.+\n.+)+\*/
- 我试过将
ReflowComments
设置为 false
...但是 none 这些东西奏效了。
我知道这个块中有两个注释,但我在同一行找不到任何 clang 格式参数寻址块注释。我怎样才能阻止 clang-format 插入这个 space?
而且我不想通过 disabling clang-format 为每个 Doxygen 评论块解决这个问题。这似乎很荒谬。
有什么好的建议吗? :-)
在您的 .clang-format
文件中:
CommentPragmas: '^\.+'
这将不会格式化以反斜杠开头后跟单词的注释行。即使在 doxygen 注释之前有一个星号,这仍然有效,因为 clang-format 会自动忽略每个注释行开头的星号和空格。
我在 C/C++ 代码中使用长块 C 风格的 Doxygen 注释。这是 http://www.doxygen.nl/manual/docblocks.html 上列出的样式 #4,看起来像这样(运行 最多 80 个字符)...
/**************************************************************************//**
* \file
* \date 2017-01-02
* \author Alex Hogen
******************************************************************************/
如果我对它进行 运行 clang-format,它 在两个正斜杠之间插入一个 space,所以它看起来像这样愚蠢....
/**************************************************************************/ /**
* \file
* \date 2017-01-02
* \author Alex Hogen
******************************************************************************/
- 我已将
SpacesBeforeTrailingComments
设置为 2,所以这不是问题所在。 - 尝试了
CommentPragmas
正则表达式\/\*+\/\/\*+
。 - 尝试了
CommentPragmas
正则表达式/\*(.+\n.+)+\*/
- 我试过将
ReflowComments
设置为false
...但是 none 这些东西奏效了。
我知道这个块中有两个注释,但我在同一行找不到任何 clang 格式参数寻址块注释。我怎样才能阻止 clang-format 插入这个 space?
而且我不想通过 disabling clang-format 为每个 Doxygen 评论块解决这个问题。这似乎很荒谬。
有什么好的建议吗? :-)
在您的 .clang-format
文件中:
CommentPragmas: '^\.+'
这将不会格式化以反斜杠开头后跟单词的注释行。即使在 doxygen 注释之前有一个星号,这仍然有效,因为 clang-format 会自动忽略每个注释行开头的星号和空格。