我想从文本编辑器中复制一个json片段,然后将其复制到我的json语言中。因此,我必须解析该片段并从中创建AST,这不是问题。
但是,如何将该动作集成到MPS中? Paste Wrappers
和Copy and Paste Handlers
用于MPS内部的复制和粘贴操作,因为它们已经与AST一起使用,对吗?
是否可以加入“纯文本”粘贴操作?
有什么建议或例子可以借鉴吗?
答案 0 :(得分:0)
MPS具有用于Java代码的功能,它作为自定义操作(单独的上下文菜单项)实现。该实现在名为PasteAsJavaClass(URL:http://127.0.0.1:63320/node?ref=r%3Ac6bc30d1-d0d1-44c6-ba7e-90e78619615e%28jetbrains.mps.ide.java.actions%29%2F2872212824181502651)的操作中
由MPS Slack的SergejKoščejev回答
Antlr的另一种方法:
假设您有一个基于文本的自定义DSL,并且要将DSL代码导入MPS,则必须对其进行解析,并且必须将解析树映射到MPS模型。
Frederico Tomasetti撰写了有关how to integrate antlr and mps的博客文章。