zed-industries / zed

Code at the speed of thought – Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter.
https://zed.dev
Other
49.42k stars 3.01k forks source link

Language servers via WebSocket or TCP #8498

Open valentinegb opened 8 months ago

valentinegb commented 8 months ago

Check for existing issues

Describe the feature

Some language servers, such as Godot's GDScript language server, are only accessible via WebSocket and/or TCP. Allowing for languages in Zed to use WebSocket or TCP to connect to language servers would allow for even more languages to be possibly supported in Zed.

If applicable, add mockups / screenshots to help present your vision of the feature

VSCode's Godot plugin works this way, where it connects to the GDScript language server built into the Godot editor with a WebSocket or TCP stream: https://github.com/godotengine/godot-vscode-plugin

notpeter commented 3 months ago

The GDScript Zed Extension (grndctrl/zed-gdscript) currently uses netcat nc as a workaround:

Support for the Godot Language Server Protocol (LSP) is provided via nc which is assumed to be in your PATH. The language server is expected to be running on the default ip 127.0.0.1 and port 6005.

valentinegb commented 3 months ago

@grndctrl (or anyone else with insight) are there any downsides to using netcat as opposed to having support for WebSocket or TCP language servers built into Zed? If not then we could probably consider this issue resolved