在我公司的编码约定中,我们在一行上格式化嵌套命名空间。例如:
<uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
我正在尝试使用astyle强制执行此样式,但在http://astyle.sourceforge.net/astyle.html
的文档中找不到任何内容当我运行以下astyle命令时(忽略不相关的选项)
namespace Foo { namespace Bar {
...
}} // Foo::Bar
我最终将每个嵌套命名空间放在一个单独的行上,如下所示:
astyle --style=allman --add-brackets --align-reference=name --align-pointer=name --attach-namespaces --pad-header --pad-oper --unpad-paren -n <filename>
答案 0 :(得分:2)
尝试修改astyle
源代码。找到方法ASFormater::isOkToBreakBlock
并在开头插入:
if (isBraceType(braceType, NAMESPACE_TYPE))
return false;
确保它不会破坏整个格式。
P.S。希望astyle
团队能够听到并通过选项进行正确的更改。