SlickEdit Product Discussion > Features and/or Improvements

Language Server Protocol feature request


Would be nice if SlickEdit could support Language Server Protocol for things like "diagnostics", "find references", "goto definition", "autocomplete", "hover" (code browsing operations). There have been various other threads about this, but not sure I've seen one yet in the "Features and/or Improvements" board.

Notice that Apple just announced they will support Language Server Protocol in XCode:

Various other editors/IDEs already support it: VIM, Emacs, Sublime, VS Code, Zeus

Github and Facebook are collaborating on implementing it in Atom-IDE:

I rolled my own SE macro and scripts to support LSP which I use with the cquery code browser based on Clang, and there are many cases where it does a better job of filtering out references of overloads and same names symbols in C++. cquery also performs preprocessing of header files while SlickEdit doesn't do preprocessing.

See other threads:,15799.0.html,16412.msg63183.html#msg63183,16412.msg63571.html#msg63571l

FYI: QtCreator just implemented Language Server Protocol in its latest release:

I would like to ask again for Language Server Protocol support.

I'm now trying to browse a large C++ codebase that makes extensive use of 'auto' and C++ templates and SlickEdit's tagging engine is having some issues, some of which I have reported, others are complex for me to make a small test case.

I think that LSP servers like clangd and ccls are more mature now and may be able to fill in where SE's tagging falls short. These LSP engines also make use of clang compiler itself.

Below web page shows animations of how the clangd language server can interact with an IDE, it would be nice if SlickEdit could implement an interface to clangd like this:

I wrote a basic macro to interface with clangd and I'm finding there are some things it does better than SlickEdit's engine (such as determining the type of an 'auto' in range-based for loop), but other areas where SlickEdit's tagging engine is better - clangd missed a cross-reference that SlickEdit found.

My basic macro does not have all the fancy GUI integration it just gives a report in the Output window or Search window (for goto definition or find references). Would be SOO nice if SlickEdit could do what is in the animations on above website, especially for the auto-complete/auto-list.

John H.:
Is SlickEdit going to implement clangd LSP support? This is a big step forward and it looks like all of the competing editors have it. I'm working on the Linux kernel which has 25 or 30M lines of code, and although SlickEdit has been adequate, it is imperfect, because both definitions and references are missed when SE cannot quite figure out the macros. And the fundamental problem is simply that a real compiler is needed in order to get this right.

This is such a very big deal that, even after using SE for nearly 20 years, I'm getting ready to migrate to something else--something with this new clangd/LSP support. But I'd rather stay with SE, so please reply back with your intentions here.


[0] Message Index

Go to full version