mirror of
https://github.com/tiennm99/serena.git
synced 2026-10-20 02:18:13 +00:00
feat: add Deno language server support
Add a Deno language server backed by the Deno CLI's built-in `deno lsp`, serving TypeScript/JavaScript in Deno projects. Unlike the plain typescript-language-server it understands Deno module resolution (npm:/jsr:/https: imports) and the `Deno.*` global namespace. It is experimental and must be selected explicitly via `language_servers: [deno]`; it overlaps the TypeScript server on file extensions, so it is not auto-detected. Requires the `deno` CLI on PATH. Tests run in CI: the `deno` marker joins the other-langs batch, which now installs Deno via denoland/setup-deno. Off-CI and wherever the CLI is absent they skip through the central conftest guard, following the existing pattern for toolchain-gated language servers. Hover is covered explicitly, including hover on a `Deno.*` global, which is the capability this server adds over the TypeScript one.
This commit is contained in:
1 parent
c7af2c09ef
commit
7a870878b8
13 files changed
+328
-14
No files matched your search
@@ -164,6 +164,12 @@ Some languages require additional installations or setup steps, as noted.
|
||||
* **TOML**
|
||||
(experimental; uses Taplo 0.10.0, taken from PATH if present, otherwise downloaded automatically)
|
||||
* **TypeScript**
|
||||
* **Deno**
|
||||
(experimental; requires the `deno` CLI on PATH — it bundles the language server used here;
|
||||
serves Deno TypeScript/JavaScript and understands `npm:` / `jsr:` / `https:` imports and the `Deno.*`
|
||||
globals, which the plain TypeScript language server does not; overlaps `typescript` on file extensions,
|
||||
so it is not auto-detected and must be set as the language explicitly — do not also enable `typescript`
|
||||
for the same files)
|
||||
* **Vue**
|
||||
(3.x with TypeScript; requires Node.js v18+ and npm; supports .vue Single File Components with monorepo detection)
|
||||
* **YAML**
|
||||
|
||||
Reference in new issue
Block a user