eclipse / lsp4e

Language Server Protocol support in Eclipse IDE
Eclipse Public License 2.0
60 stars 53 forks source link

CTRL+SHIFT+T conflict #961

Closed ewillink closed 4 months ago

ewillink commented 4 months ago

2024-03 reports at start up:

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)

org.eclipse.jdt.ui.navigate.open.type has been in force for at least 10 years; lsp4e's conflict prevents the traditional usage and of course achieves nothing for lsp4e.

mickaelistria commented 4 months ago

This is related to https://github.com/eclipse-platform/eclipse.platform.ui/pull/1508 , the handler should not pop-up unless LSP4E can participate to assistance on the current file. Can you please check if this happen when restarting while all files are closed? And then, if it does not appear on such "fresh" startup, can you please share when this warning pops-up? And finally, do you really see an issue with Ctrl+Shift+T at usage or is it just this warning?

ewillink commented 4 months ago

The problem as reported was cut and paste from the Console as I start a nested Eclipse, before the GIT "The environment variable HOME is not set" warning. The nested Eclipse has an Xtext DSL editor as the 'active' editor and an Ecore editor on another tab.

However, I have been noticing that CTRL+SHIFT+T just does not work for Java; it was making me start to question my sanity. I know very little about LSP except that it is an advanced editing capability and so is clearly not othogonal to Java editing. LSP must therefore IMHO defer to the traditional Java usage rather than rely on probably dubious fragile smarts to allow co-existence.

mickaelistria commented 4 months ago

LSP must therefore IMHO defer to the traditional Java usage rather than rely on probably dubious fragile smarts to allow co-existence.

This was the topic of many fixes last year, so it's supposed to work as you expect. What version of LSP4E do you installed? Please make sure it's latest release.

ewillink commented 4 months ago

Oops, I had reverted from 2024-03 to 2023-12 to chase down a different candidate regression. Starting up on 2024-03 everything looks good. In partricular no conflict message starting nested Eclipse.

Will comment again if I see that bad Java tooling appears after more extensive usage.