[clangd-dev] RFC: Semantic highlighting
Jan Korous via clangd-dev
clangd-dev at lists.llvm.org
Wed Jan 30 16:06:36 PST 2019
Just FYI - due to change of plans we decided to postpone this :( The main reason is that we want to have an editor against which we can test the feature first.
> On Jan 17, 2019, at 1:05 AM, Sam McCall <sammccall at google.com> wrote:
> On Wed, Jan 16, 2019 at 7:44 PM Jan Korous <jkorous at apple.com <mailto:jkorous at apple.com>> wrote:
> Our intended use-case is clangd talking to the recently announced SourceKit-LSP service:
> https://github.com/apple/sourcekit-lsp <https://github.com/apple/sourcekit-lsp>
> I haven’t really thought about details yet (including how to approach testing) but I assume we’ll have some integration tests in SourceKit-LSP. But it makes sense to test (at least manually) with some editor client too.
> Understood - I think a lot of the decisions about details will depend on how this feels in practice in an editor (latency, signal-vs-noise) so I think we'll need it connected to a real editor to really understand. I guess there's a prototype of XCode that can use this, but the rest of us need to find something to try it out on too :-)
> No, it’s really the server who’s responsible for ignoring these. I guess it makes sense since client can’t just decide to not send 'textDocument/didChange’ to server as they would get out of sync.
> https://github.com/Microsoft/vscode-languageserver-node/pull/367/files#diff-0253ecfa5ea7304bd5d168e2665e2fd1R54 <https://github.com/Microsoft/vscode-languageserver-node/pull/367/files#diff-0253ecfa5ea7304bd5d168e2665e2fd1R54>
> Ah right - the server is responsible for deciding when to send a syntax update, and the client is responsible for interpolating in between.
> So the server has the responsibility of guessing when the client's interpolation will do a better job and it shouldn't waste time calculating and/or sending a new notification.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the clangd-dev