Define key bindings for Eclipse Commands. This tutorial describes how to define shortcuts for Eclipse commands. This article is based on Eclipse Indigo (3.7) and uses the Eclipse 3.x API.
|This tutorial describes the Eclipse 3.x API which is used for Eclipse IDE plug-in development. For Eclipse RCP you should use the new Eclipse 4 API which is described in the Eclipse RCP tutorial.|
1. Eclipse key bindings
Via key bindings you can define shortcuts for your Eclipse Commands.
Eclipse uses a default key configuration scheme. If your application uses existing plug-ins where key bindings are already defined these key bindings will also be active in your Eclipse RCP application. If that is not desired then you can configure your product to use another scheme.
The following describes first how to create key bindings using this default configuration scheme. Afterwards I how to overwrite the default key binding scheme of Eclipse.
To define a shortcut for a command you use
together with the
To define and use your own scheme you need:
Define a new scheme via extension point "org.eclipse.ui.bindings"
Assign this scheme to the key bindings you defined
Have a product created
Define the file "plugin_customization.ini" and set the scheme for the product via a property.
2. Prerequisites for this tutorial
3. Eclipse Commands
4. Tutorial: Defining key bindings for Commands
4.1. Keybinding using the default scheme
Create a new project "de.vogella.rcp.intro.commands.keybinding" using the "Hello RCP" template, declare command "de.vogella.rcp.intro.commands.keybinding.hello" with a default handler "de.vogella.rcp.intro.commands.keybinding.HelloHandler" which prints out "Hello" to the console Add the extension point "org.eclipse.ui.bindings" to your project. Right-click in this extension point, select New→ Key.
Select as schemeID "org.eclipse.ui.defaultAcceleratorConfiguration" this is the workbench default and will make sure you keybinding is valid in the whole application. The commandId is the ID of the command you just created. The sequence is the shortcut key for calling the command. M1 represents the Ctrl key.
If you now run it the keybinding should work and if you press Ctrll+1 the message on the console should be visible.
4.2. Defining your own scheme
Add now another key binding Ctrl+N to the command "de.vogella.rcp.intro.commands.keybinding.hello". Try it. This will not work as it is conflicting with the Eclipse default schema. Right-click in this extension point "org.eclipse.ui.bindings", select New→ Scheme. Create a schema with the id "MyScheme".
Assign the scheme id to your commands.
Define a product. See Defining a product for Eclipse RCP for details. Create the following file "plugin_customization.ini" and put it in your main directory
If you now run your product the Ctrl+N shortcut should work.
5. About this website
6. Links and Literature
6.1. Eclipse Commands Resources
6.2. vogella GmbH training and consulting support
|TRAINING||SERVICE & SUPPORT|
The vogella company provides comprehensive training and education services from experts in the areas of Eclipse RCP, Android, Git, Java, Gradle and Spring. We offer both public and inhouse training. Whichever course you decide to take, you are guaranteed to experience what many before you refer to as “The best IT class I have ever attended”.
The vogella company offers expert consulting services, development support and coaching. Our customers range from Fortune 100 corporations to individual developers.
Appendix A: Copyright and License
Copyright © 2012-2016 vogella GmbH. Free use of the software examples is granted under the terms of the EPL License. This tutorial is published under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Germany license.