<div dir="ltr"><div>Hi Mark,</div><div><br></div><div>I just tried the current version and am pretty much impressed. Code completion</div><div>really works nicely, I think that is extremely useful. Also goto definiton works</div><div>nicely - cool!</div><div><br></div><div>What comes to my mind as useful features:</div><div>- when the text cursor hovers over a variable, highlight all occurrences of the variable (KTextEditor::MovingRanges). It could even highlight read-only access with e.g. a yellow background, and write access with a cyan background.</div><div>- In a class hierarchy, goto definition could return multiple entries (including the base classes). In that case, I would suggest to just open a QMenu at the current text cursor position listing the available choices.</div><div><br></div><div>Maybe I'll find some time to hack on it as well. In any case, please continue</div><div>this effort, this is one of the best additions Kate got in the recent years.<br></div><div><br></div><div>Best regards</div><div>Dominik</div><div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jun 23, 2019 at 9:16 PM Mark Nauwelaerts <<a href="mailto:mark.nauwelaerts@gmail.com">mark.nauwelaerts@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi All,<br>
<br>
A while ago, I started to develop an LSP client plugin for kate. In my <br>
enthusiasm, I did not notice until recently that there was another approach at <br>
doing so (as mentioned here; <br>
<a href="https://cullmann.io/posts/kate-lsp-client-progress/" rel="noreferrer" target="_blank">https://cullmann.io/posts/kate-lsp-client-progress/</a>). Consequently, my plugin's <br>
development is not related to the existing lsp branch and is also a separate <br>
plugin (not integrated into project plugin). In particular, the LSP protocol <br>
code is plain-and-simple (and home-grown) but nevertheless effective and the <br>
plugin is already in fairly good shape (even if say so myself ;-) ). It <br>
provides a symbol outline (like the SymbolViewer plugin), completion and goto <br>
definition, all of the former having been tested with clangd and <br>
python-language-server.<br>
<br>
The plugin code can be found in a github mirror fork; <br>
<a href="https://github.com/mnauw/kate/tree/lspclient" rel="noreferrer" target="_blank">https://github.com/mnauw/kate/tree/lspclient</a>. Although in reasonable shape, it <br>
is still a work-in-progress and quite volatile. I hope and expect to work on it <br>
on a daily basis in the coming weeks, to polish and refine the existing code <br>
(for corner cases) and to add support for declaration, references, <br>
signatureHelp, diagnostics (and maybe some other low hanging fruit). All going <br>
well, it should end up in good state by early September (crossing some fingers) <br>
... And when/if in good shape, I obviously hope it could head into Kate master :-)<br>
<br>
Regards,<br>
Mark<br>
<br>
</blockquote></div></div>