函数定义之间的换行符

问题描述 投票:0回答:4

有没有办法在函数定义之间自动插入空格。例如。我最初的来源是:

void
func1()
{
    // func1 body.
}
void
func2()
{
    // func2 body.
}

我希望将其重新格式化为:

void
func1()
{
    // func1 body.
}


void
func2()
{
    // func2 body.
}

如果有更多的换行符,则应保留固定数量。

clang-format
4个回答
40
投票

据我所知,目前没有办法强制 clang-format 在当前没有的连续函数之间插入空行。恕我直言,这是一个巨大的缺失功能。


20
投票

你最好的选择是在 .clang-format 文件中设置 'MaxEmptyLinesToKeep: 2' 让 clang-format 保持 2 行不变。


11
投票

如本 answer 中所述,使用 clang-format 14,您可以在配置文件中使用以下内容:

SeparateDefinitionBlocks: Always

其他可能的值是

Leave
,保留定义块的间距,或
Never
,删除定义块之间的空行。


0
投票
SeparateDefinitionBlocks: Always
EmptyLineBeforeAccessModifier: LogicalBlock

以上两个选项将解决您的问题

© www.soinside.com 2019 - 2024. All rights reserved.