diff --git a/clients/lsp-magik.el b/clients/lsp-magik.el index 3e5c682159..af6f018ff7 100644 --- a/clients/lsp-magik.el +++ b/clients/lsp-magik.el @@ -59,7 +59,7 @@ :package-version '(lsp-mode . "9.0.0")) (defcustom lsp-magik-java-home nil - "Path to Java Runtime, Java 11 minimum." + "Path to Java Runtime, Java 17 minimum." :type `string :group `lsp-magik :package-version '(lsp-mode . "9.0.0")) @@ -70,21 +70,45 @@ :group `lsp-magik :package-version '(lsp-mode . "9.0.0")) +(defcustom lsp-magik-libs-dirs [] + "Paths to libs dirs of Smallworld products." + :type `lsp-string-vector + :group `lsp-magik + :package-version '(lsp-mode . "9.0.0")) + +(defcustom lsp-magik-lint-override-config-file nil + "Override path to magiklintrc.properties." + :type 'string + :group `lsp-magik + :package-version '(lsp-mode . "9.0.0")) + (defcustom lsp-magik-typing-type-database-paths [] "Paths to type databases." :type `lsp-string-vector :group `lsp-magik :package-version '(lsp-mode . "9.0.0")) +(defcustom lsp-magik-typing-show-atom-inlay-hints nil + "Show atom type inlay hints." + :type `boolean + :group `lsp-magik + :package-version '(lsp-mode . "9.0.0")) + +(defcustom lsp-magik-typing-show-argument-inlay-hints nil + "Show (certain) argument name inlay hints." + :type `boolean + :group `lsp-magik + :package-version '(lsp-mode . "9.0.0")) + (defcustom lsp-magik-typing-enable-checks nil "Enable typing checks." :type `boolean :group `lsp-magik :package-version '(lsp-mode . "9.0.0")) -(defcustom lsp-magik-trace-server "off" - "Traces the communication between VS Code and the Magik language server." - :type `(choice (const "off") (const "message") (const "verbose")) +(defcustom lsp-magik-typing-index-usages t + "Enable indexing of usages of globals/methods/slots/conditions by methods." + :type `boolean :group `lsp-magik :package-version '(lsp-mode . "9.0.0")) @@ -98,12 +122,6 @@ :group `lsp-magik :package-version '(lsp-mode . "9.0.0")) -(defcustom lsp-magik-lint-override-config-file nil - "Override path to magiklintrc.properties." - :type 'string - :group `lsp-magik - :package-version '(lsp-mode . "9.0.0")) - (lsp-register-client (make-lsp-client :download-server-fn (lambda (_client callback error-callback _update?) @@ -124,10 +142,13 @@ (lsp-register-custom-settings `(("magik.javaHome" lsp-magik-java-home) ("magik.smallworldGis" lsp-magik-smallworld-gis) + ("magik.libsDirs" lsp-magik-libs-dirs) + ("magik.lint.overrideConfigFile" lsp-magik-lint-override-config-file) ("magik.typing.typeDatabasePaths" lsp-magik-typing-type-database-paths) + ("magik.typing.showAtomInlayHints" lsp-magik-typing-show-atom-inlay-hints) + ("magik.typing.showArgumentInlayHints" lsp-magik-typing-show-argument-inlay-hints) ("magik.typing.enableChecks" lsp-magik-typing-enable-checks) - ("magik.trace.server" lsp-magik-trace-server) - ("magik.lint.overrideConfigFile" lsp-magik-lint-override-config-file))) + ("magik.typing.indexUsages" lsp-magik-typing-index-usages))) (lsp-consistency-check lsp-magik)