Files
zed/docs/src/languages/deno.md
T
Mohit Goyal 6d42d62281 Fix Deno test task example quoting (#58774)
Updates the Deno runnable support docs so the copied test task uses
`$ZED_FILE` without nested single quotes. With the old example, Zed's
task shell wrapper could produce a command with conflicting quotes and
fail when running `deno test`.

Testing:

- `pnpm dlx prettier@3.5.0 docs/src/languages/deno.md --check`
- `git diff --check`

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #58072

Release Notes:

- N/A
2026-06-09 04:57:31 +00:00

3.0 KiB

title, description
title description
Deno Configure Deno language support in Zed, including language servers, formatting, and debugging.

Deno

Deno support is available through the Deno extension.

Deno Configuration

To use the Deno Language Server with TypeScript and TSX files, you will likely wish to disable the default language servers and enable Deno.

Configure language servers and formatters in Settings ({#kb zed::OpenSettings}) under Languages > JavaScript/TypeScript/TSX, or add to your settings file:

{
  "lsp": {
    "deno": {
      "settings": {
        "deno": {
          "enable": true
        }
      }
    }
  },
  "languages": {
    "JavaScript": {
      "language_servers": [
        "deno",
        "!typescript-language-server",
        "!vtsls",
        "!eslint"
      ],
      "formatter": "language_server"
    },
    "TypeScript": {
      "language_servers": [
        "deno",
        "!typescript-language-server",
        "!vtsls",
        "!eslint"
      ],
      "formatter": "language_server"
    },
    "TSX": {
      "language_servers": [
        "deno",
        "!typescript-language-server",
        "!vtsls",
        "!eslint"
      ],
      "formatter": "language_server"
    }
  }
}

See Configuring supported languages in the Zed documentation for more information.

Configuration completion

To get completions for deno.json or package.json, add the following to your settings file (how to edit). For more details, see JSON.

"lsp": {
    "json-language-server": {
      "settings": {
        "json": {
          "schemas": [
            {
              "fileMatch": [
                "deno.json",
                "deno.jsonc"
              ],
              "url": "https://raw.githubusercontent.com/denoland/deno/refs/heads/main/cli/schemas/config-file.v1.json"
            },
            {
              "fileMatch": [
                "package.json"
              ],
              "url": "https://www.schemastore.org/package"
            }
          ]
        }
      }
    }
  }

DAP support

To debug deno programs, add this to .zed/debug.json

[
  {
    "adapter": "JavaScript",
    "label": "Deno",
    "request": "launch",
    "type": "pwa-node",
    "cwd": "$ZED_WORKTREE_ROOT",
    "program": "$ZED_FILE",
    "runtimeExecutable": "deno",
    "runtimeArgs": ["run", "--allow-all", "--inspect-wait"],
    "attachSimplePort": 9229
  }
]

Runnable support

To run deno tasks like tests from the ui, add this to .zed/tasks.json

[
  {
    "label": "deno test",
    "command": "deno test -A $ZED_FILE",
    "tags": ["js-test"]
  }
]

See also: