每隔一段时间我就会编辑一些if-then-else语句(或者更糟糕的是,嵌套 if-then-else语句),比如说:
if A < B then
begin
DoSomething;
DoSomethingElse;
{...and more statements going on and on and on...}
FinallyWrapUpThisBit;
end
else
begin
DoThis;
DoThat;
{...and more statements going on and on and on...}
FinallyWrapUpThisBit;
end;
...而且我发现自己想要“崩溃”第一个开始 - 结束对,以提出较低的“其他”部分(通常是因为我指的是if-then statemnent之上的东西。也许是这样的只会说“开始......”并在其左侧标记[+}以再次展开它。
我已经在IDE中探索了“折叠”功能,但是没有一个命令似乎这样做。看起来我的旧D6的CodeRush做到了这一点,但我可以想象一下。 (我的想象力非常活跃......)。
任何像Castalia(或其他一些)这样的IDE插件都可以这样做吗?
答案 0 :(得分:7)
使用简单的Delphi开箱即用,你必须用你的开头...结束
{$region 'begin...end'}
....
{$endregion}
可以通过代码模板完成......
我记得Castalia有很好的彩色可视化代码块(begin..end),但我不记得它是否可以折叠。
答案 1 :(得分:7)
使用重构工具将条件分支的代码移动到单独的函数中。然后你不需要折叠任何东西。您可能还会发现可以合并两个分支共有的代码,例如调用FinallyWrapUpThisBit
。
答案 2 :(得分:1)
这里的另一个大助手是CNPack。它是一个安装到Delphi中的向导,它将为您的开始/结束对着色,使得更容易遵循代码。它并不完全是代码折叠,因为您需要使用{$ REGION} {$ ENDREGION}标记。