寻找除了或最后的尝试

时间:2013-06-25 02:24:51

标签: ide delphi shortcuts gexperts

我正在处理一些代码,这些代码具有非常长的方法(10k行!)和一些奇怪的try-finally和try-except块。后者中的一些本身很长,并且在方法开始时并不总是尝试。

显然我正在尝试重构代码,但与此同时,如果我能够跳到块的开头看看那里发生了什么,那么能够修复几个常见的病态就会容易得多。当它超过20页时,即使使用CNPack彩虹("代码结构突出显示")也只是单调乏味。

我正在使用D2010并安装了GExperts(使用DelForExp),CNPack和DDevExtensions,但我找不到任何可以让我从试用跳到最后或者回来的东西。我错过了什么吗?是否有另外一个我可以使用的加载项能让我知道这个?

2 个答案:

答案 0 :(得分:11)

GExperts在编辑专家中使用它:“移动到匹配分隔符”,默认情况下使用键盘快捷键Ctrl + Alt + Right。如果您反复调用它,它会从try到匹配的finallyexcept,再到end,然后再回到try,依此类推。

答案 1 :(得分:0)

如果您要重构代码,我建议您为每个Try Except / finally End代码块命名,并将其移动到main方法中的单独函数/过程中。

第二条建议,从最内层的尝试开始,除了/ finally结束代码块。

procedure class1.method1 ;
var
   anyVariables : ... ;
begin
 ....
 try 
 ....
 finally
 ... 
 end ;
 ....
end ;

procedure class1.method1 ;
var
   anyVariables : ... ;
   procedure first_try_finally_block ;
   begin 
      try 
      ....
      finally
      ... 
      end ;
   end ;
begin
 ....
 first_try_finally_block
 ....
end ;

我希望这可以帮助您解决问题。