kate lsp client plugin

Christoph Cullmann christoph at cullmann.io
Wed Jul 10 15:28:47 BST 2019


Hi,

> Interesting ...  at present the "servermanager" sends a (meaningless)
> document revision-id to the server, but it may well send a revision
> obtained from MovingInterface (and lock as well). Some simple RAII
> wrapper (with shared semantics) can be made for a "locked revision"
> and a collection of those (for current known/tracked documents)
> returned from servermananger to caller (when requesting a document
> sync/update to the server).  That (RAII) collection can then be
> captured into the lambda (if so deemed desired/useful by caller) so
> that the (old) revision is available for translation to current(cursor
> positions) when processing response.  Shared RAII will then release as
> and when ok by all holders.
> 
> In case of symbolview, that is probably not needed, since the outline
> is a "moving target" anyway when typing frantically and will update
> (accurately) to latest state when typing seizes.

Hmm, I think for the symbol view it would be not that bad, given at 
least normally
it will perfectly fine translate the line moves and you don't need to 
trigger reparsing
that often at all. But it is nothing critical.

> 
> However, it is as noted useful for well-aimed highlighting, and also
> when the time comes for processing server TextEdits (e.g. formatting).

Yes, for that it would be much more important.

Dominik linked you some pull requests for some smaller changes, you 
could take a look at that.

If you have some further changes, it would be cool if you can push them,
I want to take a look if I could improve the highlight further ;=)

Greetings
Christoph

> 
> Regards,
> Mark

-- 
Ignorance is bliss...
https://cullmann.io | https://kate-editor.org


More information about the KWrite-Devel mailing list