Eclipse rcp eclipse rcp密钥绑定不';行不通

Eclipse rcp eclipse rcp密钥绑定不';行不通,eclipse-rcp,e4,Eclipse Rcp,E4,我正在努力使eclipse键绑定工作。 我试图使重命名命令工作。 我看了一些教程并进行了实验。我在控制台()中启用了命令和密钥绑定跟踪 我创建了一个自定义命令: com.mycompany.myproduct.command.rename 到目前为止,我得到的是: 1) 我试着按照这个教程,但我得出结论,这是e3的。这是因为您需要添加只识别旧e3处理程序的命令插件。不涉及xmi 2) 我尝试使用xmi绑定上下文。我让我的命令在顶级命令树中注册,并连接到顶级处理程序树中的处理程序。 在Bindi

我正在努力使eclipse键绑定工作。 我试图使重命名命令工作。 我看了一些教程并进行了实验。我在控制台()中启用了命令和密钥绑定跟踪

我创建了一个自定义命令:

com.mycompany.myproduct.command.rename
到目前为止,我得到的是:

1) 我试着按照这个教程,但我得出结论,这是e3的。这是因为您需要添加只识别旧e3处理程序的命令插件。不涉及xmi

2) 我尝试使用xmi绑定上下文。我让我的命令在顶级命令树中注册,并连接到顶级处理程序树中的处理程序。 在BindingTables部分,我有一个bindingTable,它在对话框和Windows上下文中工作。我添加了一个键绑定。序列是“F2”,它连接到我的自定义命令

当我点击F2时,我在跟踪中得到以下消息:

COMMANDS >>> execute >>> starting: id=org.eclipse.ui.edit.rename; event=ExecutionEvent(Command(org.eclipse.ui.edit.rename,Rename,
        Rename the selected item,
        Category(org.eclipse.ui.category.file,File,null,true),
        org.eclipse.ui.internal.MakeHandlersGo@1285594,
        ,,true),{},Event {type=1 Tree {} time=1480412218 data=null x=0 y=0 width=0 height=0 detail=0},org.eclipse.e4.ui.workbench.modeling.ExpressionContext@177fc1a)
简而言之,默认的EclipseIDERename命令被触发(我的密钥绑定不做任何事情),并且在我的应用程序上不会发生任何事情

但是,如果我将顺序更改为“M1+1”并按ctrl+1,就会出现一个小弹出窗口,让我在“快速修复”(EclipseIDE命令)和重命名之间进行选择。如果我选择重命名,处理程序将激发

现在,如何禁用EclipseIDE默认键绑定。第1步中的教程说明肯定不会这样做


谢谢

您可以尝试强制E4以用户身份读取密钥绑定,将“type:user”标记添加到密钥绑定本身:


我发誓,有时应用程序似乎只是喜欢看到我们受苦。我和你有同样的问题;不久前,我的密钥绑定工作得很好,今天我注意到它不再工作了。感谢这篇文章,我找到了两种解决方案:

  • 上述评论中的“类型:用户”
  • 从运行配置中删除org.eclipse.ui;这似乎是在我自己添加了一些插件后按下add required plugins时添加的

  • 纯e4 RCP不应使用任何“org.eclipse.ui.xxx”插件Vogella涵盖了键绑定。显然,如果缺少@FOCUS注释,则存在一个众所周知的问题。在升级eclipse并深入研究之后,我设法使键绑定以E3的方式工作。但是,我正在使用兼容层构建一个e4应用程序,并且我的所有命令都是e4。似乎E3正在阻止E4键绑定。。。我是怎么做到的?是的,我确实有一些org,eclipse.ui.xxx插件。。。但如果我删除它们,我的应用程序将无法工作…太棒了!!!你怎么知道的???????这些信息在任何地方都不可用!!!!说真的,你怎么知道的???我甚至还有拉尔斯的书。在我们谈话的时候,还有一个问题要问你。我有一个3.x包浏览器树,其中有一个操作提供程序,通过plugin.xml定义重命名操作。此3.x操作运行E4重命名处理程序。当我将E4 keybinfing设置为rename(F2)时,rename操作可以识别它并在上下文菜单中打印它吗?您应该能够使用中间命令将keybinding直接连接到处理程序:e4xmiYou中的所有这些您没有说关于标记的信息源是什么:-)