如何在eclipse中正确设置布尔表达式的格式

如何在eclipse中正确设置布尔表达式的格式,eclipse,eclipse-cdt,code-formatting,Eclipse,Eclipse Cdt,Code Formatting,我几乎在EclipseCDT中有了我想要的代码格式化程序,但是布尔表达式有问题 这是代码格式化程序的输出: if (ACM_SlewRight) mStopWallSlewRight = (leftSide && absAngleCur > 900) || (rightSide && absAngleCur < 900); } return mStopWallSlewLeft|| mStopWallSlewRight || mStopWal

我几乎在EclipseCDT中有了我想要的代码格式化程序,但是布尔表达式有问题

这是代码格式化程序的输出:

if (ACM_SlewRight)
    mStopWallSlewRight = (leftSide && absAngleCur > 900) || (rightSide && absAngleCur < 900);

}

return mStopWallSlewLeft||
mStopWallSlewRight ||
mStopWallBoom1_Up ||
mStopWallBoom1_Down ||
mStopWallBoom2_Up ||
mStopWallBoom2_Down ||
mStopWallTeleOut;
if(ACM_右)
mstopWallSliverRight=(左侧和反向角度cur>900)| |(右侧和反向角度cur<900);
}
返回mstopWallLeft||
MSTopWallRight||
mstopwallbom1_向上||
MSTOPWALLBOOM 1_关闭||
MSTopWallbom2_向上||
MSTopWallbom2_关闭||
mStopWallTeleOut;
我希望它看起来像这样:

if (ACM_SlewRight)
{
    mStopWallSlewRight = (leftSide && absAngleCur > 900) || 
                         (rightSide && absAngleCur < 900);

}

return mStopWallSlewLeft||
       mStopWallSlewRight ||
       mStopWallBoom1_Up ||
       mStopWallBoom1_Down ||
       mStopWallBoom2_Up ||
       mStopWallBoom2_Down ||
       mStopWallTeleOut;
if(ACM_右)
{
mstopWallSliewRight=(左侧和反向角度>900)|
(右侧和横向角度小于900);
}
返回mstopWallLeft||
MSTopWallRight||
mstopwallbom1_向上||
MSTOPWALLBOOM 1_关闭||
MSTopWallbom2_向上||
MSTopWallbom2_关闭||
mStopWallTeleOut;
我不明白为什么第一部分没有包装,因为我将最大线宽配置为80,这是98。退货由我自己包装,因为包装器在这里也不会做任何事情


我还尝试了我能找到的所有选项(特别是换行->表达式)。但是我找不到解决方案,布尔表达式不受支持吗?

您的问题的直接答案是您可能在CDT的内置格式化程序中发现了一个bug。你可以

更具前瞻性的答案是,CDT的内置格式化程序在过去几年中几乎没有进行过任何维护,因此任何此类错误都不太可能被修复(除非您自己进行修复)。另一方面,还有更好的C++源代码格式(插件)和插件,将它们集成到伊柯丽斯(类似)中,您可能会有更好的体验。