【问题标题】:Where does eclipse store its default key bindings?eclipse 在哪里存储它的默认键绑定?
【发布时间】:2017-10-02 13:41:12
【问题描述】:

我想知道 Eclipse 中所有默认键绑定的命令 ID。有没有捷径可以获取?

我已在所有相关的 Eclipse 文件夹中搜索“ALT”“CTRL”等关键字。但是它们都没有所有的默认操作。

例如:我已将所有关键首选项导出到一个 csv 文件中,如下所示:

文本编辑 |删除行 | ctrl+d |编辑文本 |

窗口 |下一编辑 | ctrl+f6 |在窗口中 |

现在我需要知道所有此类键绑定的相应命令 ID。我希望在我的 vrapperrc 文件中使用它。

【问题讨论】:

    标签: eclipse eclipse-plugin key-bindings


    【解决方案1】:

    默认值来自使用 org.eclipse.ui.bindings 扩展点为键绑定服务做出贡献的所有插件。绑定在每个插件的 plugin.xml 中定义。

    因此,例如,org.eclipse.ui 插件定义了如下绑定:

    <extension point="org.eclipse.ui.bindings">
      <key
            commandId="org.eclipse.ui.newWizard"
            sequence="M1+N"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" />
      <key
            commandId="org.eclipse.ui.file.close"
            sequence="M1+W"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" />
      ... many more ....
    

    在插件中,您可以使用IBindingService 服务的getBindings 方法进行所有这些绑定:

    IBindingService bindingService = PlatformUI.getWorkbench().getAdapter(IBindingService.class);
    
    Binding [] bindings = bindingService.getBindings();
    

    Binding 有一个getParameterizedCommand 方法来获取键绑定的命令。

    【讨论】:

    • 我在安装 eclipse 的主目录中找到了所有插件文件。我在其中搜索了“org.eclipse.ui.bindings”。有几次出现,但它们没有包括我在 eclipse 的关键首选项窗口中看到的所有命令
    • plugin.xml 文件打包在Eclipse 安装中的各种Eclipse jar 文件中,如果您搜索文件,您将看不到它们。您将不得不编写一个 Eclipse 插件来执行此操作。
    • 不写eclipse插件的人有什么办法吗?
    猜你喜欢
    • 1970-01-01
    • 2015-03-21
    • 2017-01-02
    • 2018-08-19
    • 2019-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-30
    相关资源
    最近更新 更多