-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: edit server path and options in preference page #21
Conversation
32e1b70
to
985deac
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change points out a problem that we'll need to resolve at some future point. Different projects in the workspace may need different clangd installs. I don't think we should put this preference as a project setting as well as that would add hard coded paths to the project settings.
I think we can defer it for now, but it is something to keep in mind. This becomes of special interest to Renesas IIUC because they have special versions of clang(d) for different processors.
....cdt.lsp.editor.ui/src/org/eclipse/cdt/lsp/editor/ui/preference/LspEditorPreferencePage.java
Outdated
Show resolved
Hide resolved
....cdt.lsp.editor.ui/src/org/eclipse/cdt/lsp/editor/ui/preference/LspEditorPreferencePage.java
Outdated
Show resolved
Hide resolved
...pse.cdt.lsp.editor.ui/src/org/eclipse/cdt/lsp/editor/ui/preference/LspEditorPreferences.java
Show resolved
Hide resolved
Maybe then it's a better approach to let C/C++ toolchain(s) provide the server path and settings. (That's what we do in our projects). The toolchain plugin could use the This leads to new LSP4E requirement: Run a language server instance per project. Instead, the project specific compile settings should be used to examine external (#include) files included in a project file (e.g. a C++20 system header is included in a project where the C++20 standard has been defined). Another project in the workspace could use a different standard ans system library. I opened a new issue to discuss this requirement further: #22 |
The server path and options can be edited for the used server provider. The default values are the commands delivered from the server provider.
985deac
to
f6cdcfc
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM now.
The server path and options can be edited for the used server provider. The default values are the commands delivered from the server provider.
In Windows it looks like this:

TODO: add tests and create a new issue for the topic that the LS has to be restarted when the server binary or options changes