Installing the STS4 plugin using Eclipse results in shortcut key conflicts
Describe the bug
Hello, I am a Chinese developer. The English expression of all the following content may not be accurate
After installing STS4, warning messages appear: 'A conflict occurred for ALT+SHIFT+R' and 'A conflict occurred for CTRL+SHIFT+T'
At first, I thought all I needed to do was modify the duplicate shortcut keys, but I found that the warning still existed after modifying the duplicate shortcut keys. Later, I deleted all the shortcut keys, and the warning still existed. I suspect it may be a plugin issue, which has nothing to do with my Eclipse shortcut keys
Later, I copied the online installation plugin URL from the official website, and the same issue occurred
To Reproduce
Use Eclipse to search for STS4 in the market and perform the default installation, then restart Eclipse
Sample
I did not upload the project to Git Hub
-
Plugin installation website provided on the official website: https://download.springsource.com/release/TOOLS/sts4/update/e4.25/
-
Eclipse Market Online Installation
Note: My Eclipse version happens to be 4.25
After subsequent testing, I found that only CTRL+SHIFT+T had issues
Because I uninstalled all Eclipse plugins and only installed STS4
After installation, open key settings - (org. eclipse. lsp4e. symbolworkspace, Go to Symbol in Workspace) shortcut key is empty
But the warning message is
A conflict occurred for CTRL+SHIFT+T:
Binding(CTRL+SHIFT+T,
ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type,
Open a type in a Java editor,
Category(org.eclipse.ui.category.navigate,Navigate,null,true),
WorkbenchHandlerServiceHandler("org.eclipse.jdt.ui.navigate.open.type"),
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,,system)
Binding(CTRL+SHIFT+T,
ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace,
,
Category(org.eclipse.lsp4e.category,Language Servers,null,true),
WorkbenchHandlerServiceHandler("org.eclipse.lsp4e.symbolinworkspace"),
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,,system)
Whether I clear this shortcut key or set it to another shortcut key
After restarting Eclipse, it will be restored
Obviously, it's the problem with this plugin
After my testing
The problem appears in the "Spring Boot Language Server Feature 4.18.0.202303131439" of the STS4 plugin
When I uninstall this separately, the warning message will not appear
But this will make my plugin incomplete
I also found the configuration of the plugin and tried to modify it, but compressing it after modification cannot replace the original compressed file
I'm sorry, I don't know how to develop Eclipse plugins, so I'm completely at a loss
Hope to help solve it or provide a solution
I have done my best
@787218300 I wasn't able to reproduce this problem. I'm using a full STS distribution, not plain Eclipse with spring plugins installed on top of it... Are you working with STS 4.18.0 distribution? If not I'd try to reproduce with the STS distribution... This looks more like the problem in LSP4E project... (because of org. eclipse. lsp4e. symbolworkspace, Go to Symbol in Workspace). You could try creating an issue here https://github.com/eclipse/lsp4e perhaps
I think the conflicts in the keyboard shortcuts that you are (probably as a warning showing up in the Error Log view or on the console) is a topic that has been discussed quite a bit in the LSP4E project, but it shouldn't really cause an issue due to those keybindings are being active in the different contexts. Do you see a real problem when using CTRL+SHIFT+T?
@787218300: As already mentioned by martinlippert these are only warnings. At runtime the BootJavaLanguageServerPlugin removes the key binding Shift+Ctrl+T for the Go to Symbol in Workspace command (see https://github.com/spring-projects/sts4/commit/49c9517b8ac6d0ea9ca9bedab68f5fd64a91c5ff). You can verify this in the key preferences dialog (Window > Preferences: General > Keys).
@martinlippert: With https://github.com/eclipse/lsp4e/pull/551 the applicability of this command has been limited to the Generic Editor. This solves many cases (e.g. no open editor, opened Java editor). But in the Generic Editor the key assist popup will still appear. So the workaround in BootJavaLanguageServerPlugin furthermore makes sense.