Community
Participate
Working Groups
For Android developent I had to switch to Android Studio. One of the reasons I hated it initially was that I felt completely helpless, as none of my known shortcuts worked. After discovering that I can configure IntelliJ to use Eclipse shortcuts I discovered a little love for it. I guess IntelliJ users switching to Eclipse will have a similar experience. To smooth the migration from IntelliJ to Eclipse we should provide an IntelliJ keybinding in Eclipse similar to the Emacs one we already have.
IntelliJ is welcoming to me in the sense that I can use Eclipse keybindings. We should be as friendly in Eclipse to new users.
I begin a little work to support this feature. I don't know when I could provide a key binding scheme for IntelliJ. I use this google spreadsheet from Xavier Hanin. https://docs.google.com/spreadsheets/d/1AzLtUCLkUW7_Cog3ZOcF_ASwFQhF8PM2I1cGJtRfPbE/edit#gid=0 The main problem for me is about key binding on gtk platform and carbon platform. I guess that the MacOS column of the spreadsheet is about cocoa platform. An other problem is about keybinding for chinese, japanese and korean locales.
(In reply to Gautier de SAINT MARTIN LACAZE from comment #2) > The main problem for me is about key binding on gtk platform and carbon > platform. I guess that the MacOS column of the spreadsheet is about cocoa > platform. I tend to forget Mac stuff, but Eclipse only support the "latest" Mac toolkit. I think that is Carbon.
Thanks Lars for this information. I have one more question. To provide a good IntelliJ keybinding, I think I need to configure keys in these following plugins : - org.eclipse.ui - org.eclipse.ui.workbench.texteditor - org.eclipse.search - org.eclipse.ui.editors - org.eclipse.jdt.ui - org.eclipse.jdt.debug.ui Do you know if there is other plugins to configure ? I hope I will provide a good enough keybinding for Neon M4.
[...] > I tend to forget Mac stuff, but Eclipse only support the "latest" Mac > toolkit. I think that is Carbon. No Cocoa!
(In reply to Thomas Schindl from comment #5) > No Cocoa! Thanks.
Thanks Tom.
Is this still being worked on? Coming from IntelliJ I too liked the feature where I could use eclipse shortcuts right from the start.
I agree, We should welcome IntelliJ users, by providing a set of familiar KeyBindings. I think there are two general options: 1. Provide an additional scheme for IntelliJ 2. Provide an Export/Import feature for keybindings. See: http://i.imgur.com/3p1mNnp.png As I don't see any import options on "Keys" menu, I suppose the easy way is to add a new Scheme. Indeed, in NewKeysPreferencePage, when you change the KeyBinding scheme from the dropdown, a new SchemeElement is set in the KeyController as follows: SchemeElement scheme = (SchemeElement) ((IStructuredSelection) event.getSelection()).getFirstElement(); keyController.getSchemeModel().setSelectedElement(scheme); To solve this bug, I think we should manually add mappings to the various plugin.xml, by specifying mappings for the new schemeId. As an example see org.eclipse.ui\plugin.xml where are defined bindings for emacs. Below you see how a single keybinding is defined: <key commandId="org.eclipse.ui.file.close" sequence="CTRL+X K" schemeId="org.eclipse.ui.emacsAcceleratorConfiguration" /> This solution is not complex, but long to do, and it will increase the size of the plugin.xml Do you think this is an acceptable solution?
(In reply to Patrik Suzzi from comment #9) > I agree, We should welcome IntelliJ users, by providing a set of familiar > KeyBindings. > > I think there are two general options: > 1. Provide an additional scheme for IntelliJ > 2. Provide an Export/Import feature for keybindings. > > See: http://i.imgur.com/3p1mNnp.png > > As I don't see any import options on "Keys" menu, I suppose the easy way is > to add a new Scheme. > > Indeed, in NewKeysPreferencePage, when you change the KeyBinding scheme from > the dropdown, a new SchemeElement is set in the KeyController as follows: > > SchemeElement scheme = (SchemeElement) ((IStructuredSelection) > event.getSelection()).getFirstElement(); > keyController.getSchemeModel().setSelectedElement(scheme); > > To solve this bug, I think we should manually add mappings to the various > plugin.xml, by specifying mappings for the new schemeId. > > As an example see org.eclipse.ui\plugin.xml where are defined bindings for > emacs. Below you see how a single keybinding is defined: > > <key > commandId="org.eclipse.ui.file.close" > sequence="CTRL+X K" > schemeId="org.eclipse.ui.emacsAcceleratorConfiguration" /> > > This solution is not complex, but long to do, and it will increase the size > of the plugin.xml > > Do you think this is an acceptable solution? I think modifying the different plugin.xml would be acceptable, as like you said, this seems to be the way the emacs keybindings are made. I don't think plugin.xml sizes are really a concern.
After thinking a bit on it I think maybe adding an import option would be better. Cluttering up the plugin.xml might not be such a good idea, as there may be other schemes we want to add in the future. Correct me if I'm wrong, but at the moment there's only an option for exporting the current keymap right? So the only way to get the same preferences would be via Oomph (preference recorder, although I'm not sure it saves the keys) or via a preference file (same problem, not sure if keys are saved inside it)?
Are you still working on it? As I want this feature, I created a new plugin and pushed it to GitHub: https://github.com/IntelliJIdeaKeymap4Eclipse/IntelliJIdeaKeymap4Eclipse Pull requests are appreciated. As a separate plugin we can get feedback from users earlier. As soon as it is feature complete you can merge it into base Eclipse. It will be long to do, but if you help me, we can ship the IntelliJ IDEA keymap with Eclipse Photon.
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. As such, we're closing this bug. If you have further information on the current state of the bug, please add it and reopen this bug. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant. -- The automated Eclipse Genie.