【问题标题】:clang-format automatically changes function block comments, how to disable it?clang-format 自动更改功能块注释,如何禁用它?
【发布时间】:2020-03-01 07:57:37
【问题描述】:

当我选择ColumnLimit 任何非零值时。它将块 cmets 转换为 Doxygen 块 cmets(它在 * 之前在新行上添加空格)。但我不想改变它。如何禁用它?

我的 .clang 格式文件

ColumnLimit: 100
IndentWidth: 4
TabWidth: 4
UseTab: Never

它转换以下块 cmets

/*****************************************************************************
*   A brief comments.
*
*   @param theory .
*
******************************************************************************/

进入这个

/*****************************************************************************
 *   A brief comments.
 *
 *   @param theory .
 *
 ******************************************************************************/

注意:它在每行之前添加了空格,我不想要这些空格。 而且我不想通过禁用每个 Doxygen 评论块的 clang-format 来解决这个问题。这似乎很荒谬。

有什么好的建议吗? :-)

【问题讨论】:

  • 我觉得CommentPragmas可以解决,但是不知道怎么用。任何有正则表达式经验的人都可以尝试一下。
  • 你为什么使用正则表达式来回答这个问题?
  • @Predicate CommentPragmas 采用正则表达式来处理 cmets,这就是我用 regex 标记它的原因
  • 两者长得一模一样,区别在哪里?
  • 没关系,我现在看到了。然而,第二个块是我认为的 doxygen 通常看起来的样子,对我来说肯定更自然。

标签: c regex clang clang-format


【解决方案1】:

在您的 .clang-format 文件中添加以下行

CommentPragmas:  '^[^ ]'

这将强制 clang 格式不改变代码中的任何 cmets。

【讨论】:

    猜你喜欢
    • 2018-06-09
    • 2014-11-10
    • 2013-05-22
    • 1970-01-01
    • 2017-11-27
    • 1970-01-01
    • 2011-04-19
    • 2016-06-13
    • 2022-01-14
    相关资源
    最近更新 更多