0

另请参阅此问题:如何在调用代码格式化程序时避免扩展折叠区域?

这不是骗人的,因为我有兴趣使用 ToolsApi 解决问题。

当我按CTRL+D时,代码格式很好(大部分)
但是我所有折叠的代码部分都展开了。
有没有办法让这些部分保持折叠。

如果没有,是否可以在格式化之前保存代码折叠信息,以便稍后恢复?
我正在考虑使用 Open Tools api 编写 IDE-addin。
我使用的是 XE7,但这个问题存在于所有具有源格式的版本中。

可能的情况涉及:

  • 记录和重放代码折叠(挂钩elide调用)。
  • 仅允许格式化对当前块起作用(重新定义CTRL+D操作)。
4

1 回答 1

0

您可以做的是创建区域并禁用代码折叠,格式化代码,然后重新启用代码折叠。

要创建代码区域,请执行以下操作:

{$REGION 'Optional text that appears when the code block is folded'} 
// code 
{$ENDREGION}

要切换代码折叠选项,请按 Ctrl+Shift K+O。

因此,将代码放入区域,折叠所需的内容,按 Ctrl+Shift K+O 禁用折叠,按 Ctrl+D 格式化,然后再次按 Ctrl+Shift K+O 重新启用折叠。

当您重新启用折叠时,与区域一起折叠的内容将保持折叠状态。

信息来源:http ://docwiki.embarcadero.com/RADStudio/XE6/en/Using_Code_Folding

我希望这可以帮助你。

于 2015-04-12T15:37:06.977 回答