Quick Definition 与它在 IntelliJ IDEA 中的对应项类似。 点击节点,按住 Ctrl-Shift-I,您会看到一个弹出窗口,其中包含节点的定义。 在此弹出窗口中,您可以导航,选择其他节点并执行 Find 操作。 这样,您每次想要快速查看节点时就无需打开一个新标签页。
现在可以通过明确地从内存中移除所有模型来改进内存消耗。 您可以点击内存指示器或通过 Registry 操作设置计划清理参数(以秒为单位)。 目前,此功能处于实验性阶段,我们计划在未来版本中改进这一功能。
现在,您可为语言创建多个生成器,将它们托管在语言中(与历史版本相同)或者将它们作为常规顶级模块添加到语言旁。 使用生成器计划让您能够充分利用多个生成器。 为了帮助转换,对于没有显式生成计划的模块,只会调用一个语言生成器。 新的生成器可以从语言上下文菜单创建,您可以使用以下对话框中的新复选框确保生成器独立。
我们添加了一个新意图,可以将概念转换为接口概念,以及进行反向转换。 创建语言结构时可以使用此意图,它不会更改用法。
现在可以从代码中的用法创建概念、方法和类。 此意图可以在新语句上创建类,在表达式中创建方法,以及在子/引用角色和扩展/实现中创建概念与接口。
新的生成器语句让您能够从任意 INamedConcept 生成有效的 Java 标识符。 这会通过移除非法符号、大写和添加前缀(如有需要)创建独一无二的名称。
在之前的 MPS 版本中,查找器上的 add result 语句仅允许用于基于 node<>
的搜索结果。 现在,使用 add raw result,语言设计师可以显示 Find Usages 视图能够可视化的任意结果。
MPS 生成器在尝试解析动态引用但失败时会发出警告,考虑到不是所有的生成器都遵守使用标签映射的严格引用结构方法,这会导致出现很多警告。 因此,我们添加了新的设置,用于控制是否出现警告。
我们显著改进了加载存根模型时的性能,特别是从较大且强连接的 jar 集加载时。 我们目标项目的加载速度比在 2019.2 中快 2-3 倍(从 18 秒降到 6 秒)。 此提升也向后移植到了 MPS 2019.1 和 MPS 2019.2 中。
MPS 过去只能将一组特定文件(即 *.mps
和 *.mpsr
)作为模型处理,不过,借助自定义模型持久性,文件名可以不同。 要确保在生成模块时捆绑所有必要的模型文件,在有助于自定义文件名模式的生成脚本中,存在适用于模块的显式模型根声明。
自定义持久性示例和新生成解决方案向导文档已更新。 文档页面上数学示例和断开的链接中的生成时间错误已修复。 多个对话框和工具窗口也已得到更正。
现在支持二进制和八进制文字,并且能够正确处理 Javadoc 中的类型参数。 还修复了许多其他问题。
选择多个节点时,现在可以使用 Surround with… 操作。 之前,仅会针对包含单个节点的选择范围启用它。
对于根历史记录中的修订,您现在可以查看同一修订中更改的其他文件。
2019.2 中引入的 Show Root History 操作可用于单个文件内模型中的根。 现在,按根持久性中的模型也受到支持。
在键盘导航、编辑器中的占位符单元格行为和“New Root”外观方面,所有元语言现在都提供相同的样式和编辑体验。