在代码编辑器中折叠If-Then-Else语句(Delphi 2007)

Jam*_*amo 1 ide delphi plugins folding

每隔一段时间我就会编辑一些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;
Run Code Online (Sandbox Code Playgroud)

......我发现自己想要"崩溃"第一个开始 - 结束对,提出较低的"其他"部分(通常是因为我指的是if-then statemnent以上的东西.也许所以它只会说"开始..."并在其左侧标有[+}以再次展开它.

我已经在IDE中探索了"折叠"功能,但是没有一个命令似乎这样做.看起来我的旧D6的CodeRush做到了这一点,但我可以想象一下.(我的想象力非常活跃......).

像Castalia(或其他一些)这样的IDE插件是否可以这样做?

Fra*_*ois 7

使用简单的Delphi开箱即用,你必须围绕你的开始...结束

  {$region 'begin...end'}
  .... 
  {$endregion}
Run Code Online (Sandbox Code Playgroud)

这可以通过代码模板来完成......

我记得Castalia的代码块的漂亮彩色可视化(begin..end),但我不记得它是否可折叠.


Rob*_*edy 7

使用重构工具将条件分支的代码移动到单独的函数中.然后你不需要折叠任何东西.您可能还会发现可以合并两个分支共有的代码,例如调用FinallyWrapUpThisBit.