This is a work-in-progress PR to add the LSP plugin. There are still some things missing like the documentation but in general the plugin should work. There are 3 modes of operation:
1. Without Geany LSP support 2. With basic LSP support using https://github.com/geany/geany/pull/3849 3. With full LSP support using https://github.com/geany/geany/pull/3850
The plugin should detect with which of these modes Geany was compiled and adjust itself automatically.
For the time being I still plan continue the main development of the plugin under https://github.com/techee/geany-lsp and sync the changes here from time to time. You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany-plugins/pull/1331
-- Commit Summary --
* Add LSP plugin
-- File Changes --
M Makefile.am (4) M build/geany-plugins.nsi (1) A build/lsp.m4 (10) M configure.ac (1) A lsp/AUTHORS (1) A lsp/COPYING (340) A lsp/ChangeLog (0) A lsp/Makefile.am (4) A lsp/NEWS (0) A lsp/README (0) A lsp/data/Makefile.am (5) A lsp/data/lsp.conf (102) A lsp/src/Makefile.am (119) A lsp/src/json-glib/json-array.c (838) A lsp/src/json-glib/json-builder.c (845) A lsp/src/json-glib/json-builder.h (108) A lsp/src/json-glib/json-debug.c (38) A lsp/src/json-glib/json-debug.h (51) A lsp/src/json-glib/json-enum-types.c (123) A lsp/src/json-glib/json-enum-types.h (33) A lsp/src/json-glib/json-gboxed.c (301) A lsp/src/json-glib/json-generator.c (807) A lsp/src/json-glib/json-generator.h (113) A lsp/src/json-glib/json-glib.h (44) A lsp/src/json-glib/json-gobject-private.h (36) A lsp/src/json-glib/json-gobject.c (1005) A lsp/src/json-glib/json-gobject.h (250) A lsp/src/json-glib/json-gvariant.c (1346) A lsp/src/json-glib/json-gvariant.h (50) A lsp/src/json-glib/json-node.c (1555) A lsp/src/json-glib/json-object.c (1261) A lsp/src/json-glib/json-parser.c (1707) A lsp/src/json-glib/json-parser.h (244) A lsp/src/json-glib/json-path.c (998) A lsp/src/json-glib/json-path.h (88) A lsp/src/json-glib/json-reader.c (1138) A lsp/src/json-glib/json-reader.h (161) A lsp/src/json-glib/json-scanner.c (1371) A lsp/src/json-glib/json-scanner.h (120) A lsp/src/json-glib/json-serializable.c (386) A lsp/src/json-glib/json-types-private.h (185) A lsp/src/json-glib/json-types.h (534) A lsp/src/json-glib/json-utils.c (95) A lsp/src/json-glib/json-utils.h (37) A lsp/src/json-glib/json-value.c (280) A lsp/src/json-glib/json-version-macros.h (261) A lsp/src/json-glib/json-version.h (100) A lsp/src/jsonrpc-glib/jsonrpc-client.c (1752) A lsp/src/jsonrpc-glib/jsonrpc-client.h (165) A lsp/src/jsonrpc-glib/jsonrpc-glib.h (39) A lsp/src/jsonrpc-glib/jsonrpc-input-stream-private.h (30) A lsp/src/jsonrpc-glib/jsonrpc-input-stream.c (398) A lsp/src/jsonrpc-glib/jsonrpc-input-stream.h (67) A lsp/src/jsonrpc-glib/jsonrpc-marshalers.c (0) A lsp/src/jsonrpc-glib/jsonrpc-marshalers.h (0) A lsp/src/jsonrpc-glib/jsonrpc-message.c (0) A lsp/src/jsonrpc-glib/jsonrpc-message.h (0) A lsp/src/jsonrpc-glib/jsonrpc-output-stream.c (0) A lsp/src/jsonrpc-glib/jsonrpc-output-stream.h (0) A lsp/src/jsonrpc-glib/jsonrpc-server.c (0) A lsp/src/jsonrpc-glib/jsonrpc-server.h (0) A lsp/src/jsonrpc-glib/jsonrpc-version-macros.h (0) A lsp/src/jsonrpc-glib/jsonrpc-version.h (0) A lsp/src/lsp-autocomplete.c (0) A lsp/src/lsp-autocomplete.h (0) A lsp/src/lsp-code-lens.c (0) A lsp/src/lsp-code-lens.h (0) A lsp/src/lsp-command.c (0) A lsp/src/lsp-command.h (0) A lsp/src/lsp-diagnostics.c (0) A lsp/src/lsp-diagnostics.h (0) A lsp/src/lsp-format.c (0) A lsp/src/lsp-format.h (0) A lsp/src/lsp-goto-anywhere.c (0) A lsp/src/lsp-goto-anywhere.h (0) A lsp/src/lsp-goto-panel.c (0) A lsp/src/lsp-goto-panel.h (0) A lsp/src/lsp-goto.c (0) A lsp/src/lsp-goto.h (0) A lsp/src/lsp-highlight.c (0) A lsp/src/lsp-highlight.h (0) A lsp/src/lsp-hover.c (0) A lsp/src/lsp-hover.h (0) A lsp/src/lsp-log.c (0) A lsp/src/lsp-log.h (0) A lsp/src/lsp-main.c (0) A lsp/src/lsp-progress.c (0) A lsp/src/lsp-progress.h (0) A lsp/src/lsp-rename.c (0) A lsp/src/lsp-rename.h (0) A lsp/src/lsp-rpc.c (0) A lsp/src/lsp-rpc.h (0) A lsp/src/lsp-semtokens.c (0) A lsp/src/lsp-semtokens.h (0) A lsp/src/lsp-server.c (0) A lsp/src/lsp-server.h (0) A lsp/src/lsp-signature.c (0) A lsp/src/lsp-signature.h (0) A lsp/src/lsp-symbol-kinds.c (0) A lsp/src/lsp-symbol-kinds.h (0) A lsp/src/lsp-symbol.c (0) A lsp/src/lsp-symbol.h (0) A lsp/src/lsp-symbols.c (0) A lsp/src/lsp-symbols.h (0) A lsp/src/lsp-sync.c (0) A lsp/src/lsp-sync.h (0) A lsp/src/lsp-utils.c (0) A lsp/src/lsp-utils.h (0)
-- Patch Links --
https://github.com/geany/geany-plugins/pull/1331.patch https://github.com/geany/geany-plugins/pull/1331.diff