Open petr-tik opened 3 years ago
The code completion scores stuff has been supported.
I wanted to add a SampleCppProject with CMakeLists to test lsp-clangd.
Is that ok or do you think this is too heavy a dependency (cmake + clangd) to install in our CI?
Depends on how much will slow down the CI. My guess is that it will be fine
sounds great - i will be honest I have never written elisp tests, so they might be naive, but I look forward to your feedback
Since the code completion scores is already done, I am going to tackle the "Switch between source/header" function and use it to write some tests too
Why are there two "Compilation commands" checkboxes? Aside from that, what do you mean by inline fixes for diagnostics? Flycheck doesn't support fixes.
FYI, there is also projectile-find-other-file
to switch between source/header.
Compilation commands also kind of doesn't make sense, since Emacs is not an Editor with a strong sense of project configuration like say Eclipse. There are no project settings, meaning that clangd would end up relying on the compile_commands.json anyway.
FYI, there is also
projectile-find-other-file
to switch between source/header.
the clangd version will be faster and more precise.
Aside from that, what do you mean by inline fixes for diagnostics? Flycheck doesn't support fixes.
We do have quick fixes in lsp-treemacs-errors-list. Also, I think that the overall idea is to save one call to the server. But then all diagnostics will receive the code actions as well. Which will increase the traffic.
FYI, there is also
projectile-find-other-file
to switch between source/header.the clangd version will be faster and more precise.
That's precisely my reasoning and lsp-mode should present major lsp servers' full capabilities, instead of relying on projectile for some LSP requests.
Aside from that, what do you mean by inline fixes for diagnostics? Flycheck doesn't support fixes.
But then all diagnostics will receive the code actions as well. Which will increase the traffic.
Do you expect this increase in traffic to be significant?
Aside from that, what do you mean by inline fixes for diagnostics? Flycheck doesn't support fixes.
But then all diagnostics will receive the code actions as well. Which will increase the traffic.
Do you expect this increase in traffic to be significant?
It all depends on the number of errors/code actions per error and the refresh pattern of the clangd. JDTLS, for example, refreshes all diagnostics in all files when you change a file. Considering that more traffic puts more pressure on GC and also that the only benefit seems to be the fact that you will avoid document/codeActions which will be very fast as well I would say that the effect from implementing support for that won't be visible at all.
Clangd has several extensions introduced at different versions. After the clangd executable is found, we can check what version is running and enable everything <= found version.
Personally, I am most interested in these extensions (descending order of preference):
https://clangd.llvm.org/extensions.html