# @aufbau/lsp 中文文档

规范地址：https://npmcn.com/package/%40aufbau/lsp/

版本：0\.0\.19
npm 元数据更新时间：2026-11-11T23:12:56.587Z
中文译文更新时间：2026-11-13T04:37:29.082Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40aufbau/lsp
原文对照：https://npmcn.com/package/%40aufbau/lsp/?lang=original
项目主页：https://github.com/gleachkr/aufbau#readme
源码仓库：https://github.com/gleachkr/aufbau

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：15.8 MB，7 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：0 个
- 首次发布：2026-05-04T14:04:51.688Z
- 最新版本发布：2026-11-11T23:12:56.260Z
- 近 30 天下载量：2314（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：94（近 12 个月 94 个）

## 中文简介

用于浏览器和JavaScript运行时间的Aufbau语言服务器.

## 安装

```sh
npm install @aufbau/lsp
```

也可以使用：`pnpm add @aufbau/lsp`、`yarn add @aufbau/lsp`、`bun add @aufbau/lsp`

## README

# `@aufbau/lsp`

此软件包以 Web Assembly 的形式运行 Aufbau 语言服务器 .

## 安装

```sh
npm install @aufbau/lsp
```

## 直接服务器

`loadLspServer()` 负载 `lsp.wasm` 并同步运行服务器 调用 JavaScript 线索 。 默认加载器支持浏览器和节点:

```js
import { loadLspServer } from "@aufbau/lsp";

const server = await loadLspServer();
const responses = server.process({
  jsonrpc: "2.0",
  id: 1,
  method: "initialize",
  params: { capabilities: {} },
});
```

长期运行的验证搜索屏蔽了呼叫线. 在浏览器中,请使用 在网页必须保持响应时,工人运输.

## 工人运输

`loadLspServerWorker()` 只有浏览器。 它创建一个模块Web Worker和 期望浏览器 `Worker` 事件界面。 它不支持节点 `node:worker_threads` API (英语).

```js
import { loadLspServerWorker } from "@aufbau/lsp";

const server = await loadLspServerWorker();
server.subscribe((message) => {
  console.log(message);
});
```

节点应用程序应当使用 `loadLspServer()` 除非他们自己提供 适配器围绕 `node:worker_threads`。 。 。 .

## 文件、导入和包括

服务器跟踪客户端打开的文档(通过 `textDocument/didOpen`(中文(简体) ) 并决心 `import "other.mm0";` 财务报告和审定财务报表 `include "other.auf";` 反对 打开文档,相对于导入文档的 URI 。 所以,举例来说,一个 `import "prelude.mm0";` 内 `file:///aufbau-editor/doc1.mm0` 寻找 `file:///aufbau-editor/prelude.mm0`。带有理论的证明文件配对 在相应的路径上.

## 从 CDN 装入

软件包是普通的 `<script type="importmap">` 条目——无捆绑和 无构建步骤 :

```html
<script type="importmap">
  {
    "imports": {
      "@aufbau/lsp": "https://esm.sh/@aufbau/lsp"
    }
  }
</script>
<script type="module">
  import { loadLspServerWorker } from "@aufbau/lsp";

  const server = await loadLspServerWorker();
</script>
```

浏览器拒绝从跨源脚本构建一个工作人, CORS 这样做 别拿起那个 所以当包裹从另一个来源送达时, `loadLspServerWorker()` 靴子的工人来自同一来源 `blob:` 用户 URL 只有语句导入真正的工人模块。 这对打电话的人来说是透明的, 但规定内容-安全政策的一页必须允许:

```
worker-src blob:; script-src 'self' https://esm.sh; connect-src 'self' https://esm.sh
```

(单位:千美元)`connect-src` 盖工人的 `fetch` 联 合 国 `lsp.wasm`(.)通过自己的 `options.worker` 或者说 `options.workerUrl` 绕过通路.

## 常见问题

### @aufbau/lsp 是什么？

用于浏览器和JavaScript运行时间的Aufbau语言服务器\.

### 如何安装 @aufbau/lsp？

在项目目录运行 npm install @aufbau/lsp，或使用 pnpm add / yarn add / bun add。

### @aufbau/lsp 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/aufbau\_\_lsp 是否存在。

### @aufbau/lsp 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @aufbau/lsp 可以商用吗？

@aufbau/lsp 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @aufbau/lsp 的下载量有多少？

根据 npm 官方下载统计，@aufbau/lsp 在 2026/10/07 – 2026/11/05 这 30 天内被下载 2,314 次，日均约 77 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @aufbau/lsp 还在维护吗？

最新版本 0\.0\.19 发布于 2026/11/12（1 天前）；至今共发布 94 个版本，其中过去 12 个月发布了 94 个；首次发布于 2026/05/04。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

