zed/crates/languages/src
Max Brunsfeld 268fa1cbaf
Add initial support for defining language server adapters in WebAssembly-based extensions (#8645)
This PR adds **internal** ability to run arbitrary language servers via
WebAssembly extensions. The functionality isn't exposed yet - we're just
landing this in this early state because there have been a lot of
changes to the `LspAdapter` trait, and other language server logic.

## Next steps

* Currently, wasm extensions can only define how to *install* and run a
language server, they can't yet implement the other LSP adapter methods,
such as formatting completion labels and workspace symbols.
* We don't have an automatic way to install or develop these types of
extensions
* We don't have a way to package these types of extensions in our
extensions repo, to make them available via our extensions API.
* The Rust extension API crate, `zed-extension-api` has not yet been
published to crates.io, because we still consider the API a work in
progress.

Release Notes:

- N/A

---------

Co-authored-by: Marshall <marshall@zed.dev>
Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
2024-03-01 16:00:55 -08:00
..
astro chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
bash chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
c chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
clojure Add .cljc, .edn, & .bb to Clojure filename extensions (#8285) 2024-02-23 23:46:27 +02:00
cpp chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
csharp chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
css chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
dart chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
dockerfile chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
elixir chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
elm chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
erb chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
erlang chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
gitcommit chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
gleam chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
glsl chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
go chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
gomod chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
gowork chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
haskell chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
hcl chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
heex chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
html chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
javascript chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
json chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
lua chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
markdown chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
nix chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
nu chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
ocaml ocaml: Small query improvements and fix autoclose brackets (#7769) 2024-02-24 19:06:25 -05:00
ocaml-interface ocaml: Small query improvements and fix autoclose brackets (#7769) 2024-02-24 19:06:25 -05:00
php chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
prisma chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
proto chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
purescript chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
python chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
racket chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
ruby Improve Ruby Grammar for superclasses (#8544) 2024-03-01 16:08:03 -07:00
rust chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
scheme chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
svelte chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
terraform chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
terraform-vars chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
toml chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
tsx chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
typescript chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
uiua chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
vue chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
yaml chore: Extract languages from zed crate (#8270) 2024-02-23 15:56:08 +01:00
zig Zig outline view (#8122) 2024-02-29 17:24:35 -08:00
astro.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
c.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
clojure.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
csharp.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
css.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
dart.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
deno.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
dockerfile.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
elixir.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
elm.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
erlang.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
gleam.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
go.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
haskell.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
html.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
json.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
lib.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
lua.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
nu.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
ocaml.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
php.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
prisma.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
purescript.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
python.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
ruby.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
rust.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
svelte.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
tailwind.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
terraform.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
toml.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
typescript.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
uiua.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
vue.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
yaml.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00
zig.rs Add initial support for defining language server adapters in WebAssembly-based extensions (#8645) 2024-03-01 16:00:55 -08:00