为什么 Eclipse 的 Rascal IDE 扩展不起作用?



我尝试使用这个流氓文档的例子: http://tutor.rascal-mpl.org/Rascal/Libraries/util/IDE/Menus/Menus.html#/Rascal/Libraries/util/IDE/IDE.html

注册语言和注释器后,没有任何反应。

我的目标是构建此示例,为java文件注册一些菜单项,这些文件可以启动RASCAL可视化或报告。

任何帮助,不胜感激。

重现步骤:

  1. 在 Eclipse 中启动流氓控制台
  2. 类型import util::IDE;
  3. 类型import ParseTree;
  4. 类型m1 = popup(menu("MyMenu", [action("Example item", void (Tree t, loc s) { println("<t> @ <s>");})]));
  5. 类型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 编辑器插件的"编辑器 ID",我相信这是org.eclipse.ui.JavaEditor

最新更新