Open tknawara opened 2 months ago
It doesn't sound to me like this is part of the LSP standard, so this would likely have to be implemented as a plugin.
This is not quite an extension to the LSP spec: the spec allows sending any kind of URI and the zipfile://path-to-file.zip::path-within-zip
URI does seem to be valid and has some use by other editors. Whether opening files within zipfiles is in scope for core I'm not sure and don't have a strong opinion on.
I think this is kne of the "non-standardized" clientside features. Same as client-side commands. They are technicallypart of the spec but it's just a blackboard string and the implementation is up to the server/client. So it feels like this is out of scope for similar reasons that client-side commands are out of scope.
Hey,
From previous discussion around an issue with lsp go to definition, in turned out that for some languages (like JVM based languages ex: clojure). When the editor initiates a go-to-definition, the language server returns a path in the format
zipfile://<actual path>
the file could be a .jar file for example.example log.txt for an interaction with clojure-lsp
This is the path given by the server
and lsp implementation
atm, helix doesn't support attaching to these paths, the current behavior is to show an empty buffer, but there is a fix to show proper error messages for when the editor can't attach to the path given by the lsp.
Having proper errors in place is great, but it would be even better to support this use case, here are similar efforts done by other editors, example neovim.