我尝试使用这个RASCAL文档示例:http://tutor.rascal-mpl.org/Rascal/Libraries/util/IDE/Menus/Menus.html#/Rascal/Libraries/util/IDE/IDE.html
在注册语言和注释器之后,什么都不会发生。
我的目标是构建这个示例,为java文件注册一些菜单项,这些菜单项可以启动RASCAL可视化或报表。
任何帮助都是非常感谢的。
复制步骤:
import util::IDE;
import ParseTree;
m1 = popup(menu("MyMenu", [action("Example item", void (Tree t, loc s) { println("<t> @ <s>");})]));
registerContributions("abc",{m1});类型
当我打开一个MyMenu文件时,我希望Eclipse中有一个新的菜单项“*.abc”。我不知道它应该弹出在哪里,文档也不知道菜单项目应该在哪里显示。
rascal>import util::IDE;
ok
rascal>import ParseTree;
ok
rascal>m1 = popup(menu("MyMenu", [action("Example item", void (Tree t, loc s) { println("<t> @ <s>");})]));
Contribution: popup(menu(
"MyMenu",
[action("Example item",function(|prompt:///|(50,45,<1,50>,<1,95>)))]))
rascal>registerContributions("abc",{m1});
ok
rascal>registerContributions("rsc",{m1});
发布于 2020-01-19 18:44:14
要将菜单项添加到不由Rascal本身生成但已经在eclipse中存在的编辑器(例如,Java编辑器),可以使用registerNonRascalContributions。请参阅http://tutor.rascal-mpl.org/Rascal/Libraries/util/IDE/IDE.html#/Rascal/Libraries/util/IDE/registerNonRascalContributions/registerNonRascalContributions.html
您需要默认的Java编辑器插件的“编辑器id”,我相信它是org.eclipse.ui.JavaEditor。
https://stackoverflow.com/questions/59805362
复制相似问题