Smalltalk 如何修复Pharo中的自动代码格式?

Smalltalk 如何修复Pharo中的自动代码格式?,smalltalk,pharo,Smalltalk,Pharo,当我保存一个方法并稍后返回时,我的所有变量名都变为temp,所有参数都变为arg,代码缩进也会改变。 有没有关于如何解决这个问题的想法?您所经历的行为根本不是代码格式化。您的Image遇到无法访问原始源代码的问题。因此,它使用备份解决方案并对方法字节码进行反编译。在编译过程中,变量名被擦除,因此在反编译过程中不能重新创建它们,而是使用泛型子级 现在,你为什么会错过消息来源是另一个问题。首先,重要的是检查是否有异常。这些通常在打开或保存图像时发生,但在保存方法时也可能发生 根据Pharo版本的不同

当我保存一个方法并稍后返回时,我的所有变量名都变为temp,所有参数都变为arg,代码缩进也会改变。
有没有关于如何解决这个问题的想法?

您所经历的行为根本不是代码格式化。您的Image遇到无法访问原始源代码的问题。因此,它使用备份解决方案并对方法字节码进行反编译。在编译过程中,变量名被擦除,因此在反编译过程中不能重新创建它们,而是使用泛型子级

现在,你为什么会错过消息来源是另一个问题。首先,重要的是检查是否有异常。这些通常在打开或保存图像时发生,但在保存方法时也可能发生


根据Pharo版本的不同,您可能缺少.changes或.sources文件。当您在不移动其他支持文件的情况下复制图像时,通常会发生这种情况。

这是真的,之前发生的情况是,在启动图像后,我意识到我的代码没有从我的前5个会话中保存。这就像6个小时的编码,所以我在网上学到了我可以从Image.changes文件中恢复它。我将文件拖到我的图像中,我可以浏览我的更改,之后我开始一个接一个地“归档”更改,因为更改分别保存在每个方法中。当我完成时,这一切开始发生。我无法保存图像,我必须将其保存为新图像。我希望这能给你一个提示,告诉你我如何解决这个问题。