入门 Zed Industries 2026-09-14 17:42:19 · 0 阅读

第66章 Deno 支持

Deno 支持通过 Deno 扩展提供。

Deno 配置

若在 TypeScript 和 TSX 文件中使用 Deno 语言服务器,通常需要禁用默认的语言服务器并启用 Deno。

在设置({#kb zed::OpenSettings})中的 Languages > JavaScript/TypeScript/TSX 下配置语言服务器和格式化器,或向设置文件添加以下内容:

{
  "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"
    }
  }
}

更多信息请参阅 Zed 文档中的 配置支持的语言

配置补全

要为 deno.jsonpackage.json 提供补全功能,请在设置文件中添加以下内容(如何编辑)。更多细节请参阅 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 支持

调试 Deno 程序时,将以下配置添加到 .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
  }
]

运行支持

若要从 UI 界面运行 Deno 任务(如测试),将以下配置添加到 .zed/tasks.json

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

另请参阅:

评论 (0)