这可能看起来有点复杂,但是如果您有很多来源并且添加大括号是您只需要一次的操作,那么以下方案可能会起作用。
您可以坚持使用 astyle,但您需要暂时unrustify以及我编写的名为whatstyle的脚本。
在以下步骤中,替换test1.c
为您的来源并保留您的来源的备份,因为它们将被修改。
教 astyle 你的资源的当前风格
whatstyle.py -f astyle --mode resilient --output astylerc test1.c
教导揭露你的资源的当前风格
whatstyle.py -f uncrustify --output uncrustify.cfg test1.c
告诉 uncrustify 总是在 ifs 中添加大括号
( egrep -v mod_full_brace_if < uncrustify.cfg ; echo "mod_full_brace_if = force" ) \
> uncrustify_addbrace.cfg
使用 uncrustify 以尽可能少的样式更改重新格式化您的源
uncrustify --replace -c uncrustify_addbrace.cfg test1.c
现在已经添加了大括号,使用 astyle 重新转换为原始样式。
ARTISTIC_STYLE_OPTIONS=astylerc astyle test1.c
现在您的源应该看起来几乎与以前相同,除了添加的大括号,尽管来回样式转换可能会有更多变化。