sts4 icon indicating copy to clipboard operation
sts4 copied to clipboard

Installing the STS4 plugin using Eclipse results in shortcut key conflicts

Open 787218300 opened this issue 2 years ago • 5 comments

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

  1. Plugin installation website provided on the official website: https://download.springsource.com/release/TOOLS/sts4/update/e4.25/

  2. Eclipse Market Online Installation

Note: My Eclipse version happens to be 4.25

787218300 avatar Apr 21 '23 02:04 787218300

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

787218300 avatar Apr 24 '23 03:04 787218300

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 avatar Apr 24 '23 06:04 787218300

@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

BoykoAlex avatar Apr 27 '23 14:04 BoykoAlex

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?

martinlippert avatar May 01 '23 22:05 martinlippert

@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.

oleosterhagen avatar May 28 '23 10:05 oleosterhagen