我尝试使用RASCAL文档的以下示例:http://tutor.rascal-mpl.org/Rascal/Libraries/util/IDE/Menus/Menus.html#/Rascal/Libraries/util/IDE/IDE.html
注册语言和注释符后,什么都没有发生。
我的目标是构建此示例,以便为可以启动RASCAL可视化或报告的Java文件注册一些菜单项。
感谢您的任何帮助。
复制步骤:
import util::IDE;
import ParseTree;
m1 = popup(menu("MyMenu", [action("Example item", void (Tree t, loc s) { println("<t> @ <s>");})]));
registerContributions("abc",{m1});
当我打开* .abc文件时,我希望在Eclipse IDE中有一个新的菜单项'MyMenu'。我不知道应该在哪里弹出,文档也没有告诉您菜单项应该在哪里显示。
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});
要向不是由Rascal本身生成但已经存在于Eclipse中的编辑器中添加菜单项,例如Java编辑器,可以使用registerNonRascalContributions
。参见http://tutor.rascal-mpl.org/Rascal/Libraries/util/IDE/IDE.html#/Rascal/Libraries/util/IDE/registerNonRascalContributions/registerNonRascalContributions.html
我相信默认的Java编辑器插件org.eclipse.ui.JavaEditor
需要“编辑器ID”。