gpt4 book ai didi

c++ - Uncrustify 折叠多行函数调用

转载 作者:太空狗 更新时间:2023-10-29 21:47:51 28 4
gpt4 key购买 nike

我的函数调用看起来像这样(没有明显原因):

func
(
a,
b,
c
)

有没有办法让 uncrustify 将函数折叠成一行?试了两天不断断续续...

我让它可以用于函数声明,但我不能让它用于函数调用。

虽然我们在做这件事,但我还有如下所示的函数:

func
(
a, // (IN) the A
b, // (IN) something b
c // (OUT) the resulting value
)

有没有办法在不破坏代码的情况下处理这种情况?由于 uncrustify 保留评论,我认为这是不可能的。通过函数声明,它会将其折叠到第一条评论。

最佳答案

阅读文档,我想到了这个:

# Add or remove newline between a function name and the opening '('
nl_func_paren = remove # ignore/add/remove/force

# Add or remove newline between a function name and the opening '(' in the definition
nl_func_def_paren = remove # ignore/add/remove/force

# Add or remove newline after '(' in a function declaration
nl_func_decl_start = remove # ignore/add/remove/force

# Add or remove newline after '(' in a function definition
nl_func_def_start = remove # ignore/add/remove/force

# Add or remove newline after each ',' in a function declaration
nl_func_decl_args = remove # ignore/add/remove/force

# Add or remove newline after each ',' in a function definition
nl_func_def_args = remove # ignore/add/remove/force

# Add or remove newline before the ')' in a function declaration
nl_func_decl_end = remove # ignore/add/remove/force

# Add or remove newline before the ')' in a function definition
nl_func_def_end = remove # ignore/add/remove/force

不过,如您所料,这些评论有点毁了它。有一个选项可以将单行注释 (//) 更改为 block 注释 (/* ... */) 但是,这应该使您更容易手动连接行(例如在 vim v%J 中)

# Whether to change cpp-comments into c-comments
cmt_cpp_to_c = true # false/true

我用原型(prototype)、声明调用测试了它:

通话不受影响。另请注意以下相关选项:

# Whether to fully split long function protos/calls at commas
ls_func_split_full = false # false/true

关于c++ - Uncrustify 折叠多行函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12276328/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com