From c20c0185929fbb3f5ca0101cab38721ddac412d6 Mon Sep 17 00:00:00 2001 From: dannyfreeman Date: Tue, 25 Oct 2022 08:15:26 -0400 Subject: [PATCH] Initialize clojure-lsp with the "zipfile" dependency-scheme option When eglot is provided clojure dependencies that are located in external jars, there are two formats they could be provided in. The recommended format is "jar", which contains a jar URI like "jar:file:///path/to/jar!/path/in/jar" this URI contains a nested URI that eglot is not equipped to handle. Setting this value to "zipfile" provides them in the following format "zipfile:///path/to/jar::/path/in/jar" which doesnt not contain any nested URIs. This change ensures that we use zipfile so that the URI always correctly has the scheme removed from the uri, and ends up being provided to xref like "/path/to/jar::path/in/jar". --- lisp/progmodes/eglot.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/progmodes/eglot.el b/lisp/progmodes/eglot.el index a28df6c2d5..c9d08de0d9 100644 --- a/lisp/progmodes/eglot.el +++ b/lisp/progmodes/eglot.el @@ -230,7 +230,7 @@ language-server/bin/php-language-server.php")) (html-mode . ,(eglot-alternatives '(("vscode-html-language-server" "--stdio") ("html-languageserver" "--stdio")))) (dockerfile-mode . ("docker-langserver" "--stdio")) ((clojure-mode clojurescript-mode clojurec-mode) - . ("clojure-lsp")) + . ("clojure-lsp" :initializationOptions (:dependency-scheme "zipfile"))) (csharp-mode . ("omnisharp" "-lsp")) (purescript-mode . ("purescript-language-server" "--stdio")) (perl-mode . ("perl" "-MPerl::LanguageServer" "-e" "Perl::LanguageServer::run")) -- 2.37.3