@kugel- commented on this pull request.
> + gboolean (*goto_perform)(GeanyDocument *doc, gint pos, gboolean > definition, gpointer data); + + /** + * Pointer to function called by Geany to check whether the plugin implements + * additional symbol (e.g. type) highlighting in Scintilla. + * + * @see @c autocomplete_provided() for more details. + * @note There is no function in the @c PluginExtension structure informing + * plugins to perform symbol highlighting. Plugins + * implementing symbol highlighting should perform it at the appropriate + * moments based on Scintilla and Geany events such as when the document + * becomes visible or when the document is modified. + * + * @since 2.1 + **/ + gboolean (*symbol_highlight_provided)(GeanyDocument *doc, gpointer data); Hmm perhaps we should find a generic solution for the LSP support to do some stuff asynchronously (not necessarily now, but gradually and in the meantime we define the LSP API "not stable yet"). For example, for colorization, the LSP plugin can signal readyness to Geany's mainloop, and when Geany handles that "ready event", it would finally call `symbol_highlight_perform()`. This could even be used to complete Geany's own highlighting as well. I find it highly problematic that it's up to the LSP plugins to get the places, from where highlighting is triggered, right. At best the author looks where Geany calls `document_highlight_tags()` and draw conclusions from there. However, he may miss calls and/or it may even change between Geany versions and the plugin will regress in one version or the other. -- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/pull/3849#discussion_r1662113659 You are receiving this because you are subscribed to this thread. Message ID: <geany/geany/pull/3849/review/2153142...@github.com>