【问题标题】:Delphi automatic Format Source corrupts anonymous proceduresDelphi 自动格式化源损坏匿名程序
【发布时间】:2013-03-06 06:54:56
【问题描述】:

昨天我发现了 Delphi 中的 Format Source 功能,它为我节省了很多时间。

但是,我发现它破坏了匿名过程的布局。有没有可以改善这个结果的设置?

例如,如果我有以下代码:

procedure TServerThread.cbUpdateStreamProgBar(Precentage: Integer);
begin
  Synchronize(
    procedure
    begin
      FrmMain.StreamProgressBar.StepBy(Precentage);
    end);
end;

我自动格式化源代码后,折叠如下:

procedure TServerThread.cbUpdateStreamProgBar(Precentage: Integer);
begin
  Synchronize( procedure begin FrmMain.StreamProgressBar.StepBy
    (Precentage); end);
end;

我怎样才能避免这种情况?

【问题讨论】:

  • 我不确定这是否可能,IDE 的编辑器并没有真正“意识到”许多语言功能,但是等待其他人回答这个问题,我也很感兴趣......不要忘记在这个问题中添加delphi版本标签。
  • @ComputerSaysNo 感谢您的支持,我本人真的希望有一个解决方案。 (我只是希望不是第 3 方实用程序)
  • AFAIK 这是从 XE3 开始的功能
  • @SirRufo 不,它存在的时间比这要长得多。
  • 我发现 XE2(包括所有更新并使用 32/64 位的 vcl)非常可靠。单位范围名称易于处理,并且没有显示停止符。

标签: delphi formatting delphi-xe


【解决方案1】:

您必须升级到更新版本的 Delphi,如 cmets 中所述。 XE2 中的自动源格式化程序适用于匿名方法。

您也可以试试Experimental GExperts IDE PlugIn。如果格式不正确,有源代码可以添加自己的样式。

另见Delphi code formatter


更新,考虑一下,有一个解决方法。不过有点乏味。 通过选择源的一部分,只有选择会通过按 ctrl+D 来格式化。

【讨论】:

  • 是的,很遗憾这是 Delphi XE 代码格式化程序中的一个已知错误,除非放弃 XE 并升级到 XE2 或 XE3,否则无法修复。
猜你喜欢
  • 1970-01-01
  • 2023-03-24
  • 2010-09-28
  • 2011-03-26
  • 1970-01-01
  • 2011-01-19
  • 2010-12-07
相关资源
最近更新 更多