eclipse rcp keybindings不起作用

who*_*iac 5 eclipse-rcp e4

我想让eclipse键绑定工作.我试图让rename命令工作.我查看了一些教程并进行了实验.我在控制台中启用了命令和键绑定跟踪(http://eclipsesource.com/blogs/2009/07/08/tip-tracing-keybindings-in-rcp/).

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

com.mycompany.myproduct.command.rename
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止所得到的:

1)我试着按照这个教程,http://www.vogella.com/tutorials/EclipseCommandsKeybindings/article.html,但我得出结论,这是针对e3的.这是因为您需要添加仅识别旧e3处理程序的命令插件.没有涉及xmi

2)我试图使用xmi绑定上下文.我将命令注册在顶级命令树中,并连接到顶级处理程序树中的处理程序.在绑定表部分,我有一个在Dialog和Windows上下文中工作的bindingTable.我添加了一个键绑定.序列为"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)
Run Code Online (Sandbox Code Playgroud)

简而言之,默认的eclipse IDE rename命令被触发(我的键绑定什么都不做),我的应用程序没有任何反应.

但是,如果我将序列更改为"M1 + 1"并按下ctrl + 1,会出现一个弹出窗口,让我在"快速修复"(eclipse IDE命令)和重命名之间进行选择.如果我选择重命名处理程序触发.

现在,如何禁用eclipse IDE默认键绑定.步骤1中教程的说明肯定不会这样做.

谢谢!

Arc*_*ien 6

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

在此输入图像描述