@aufbau/lsp

中文文档
0.0.19发布于 2026/11/12Apache-2.0ES Module零依赖构建来源已验证近 30 天下载 2314

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

中文使用文档
文档目录5 节
  1. 安装
  2. 直接服务器
  3. 工人运输
  4. 文件、导入和包括
  5. 从 CDN 装入

@aufbau/lsp

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

安装

npm install @aufbau/lsp

直接服务器

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

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 (英语).

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"> 条目——无捆绑和 无构建步骤 :

<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 共发布 94 个版本,首次发布于 2026/05/04;过去 12 个月发布了 94 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.0.19latest2026/11/121 天前
0.0.19-canary.20261111T223547Z.95.gffdc3b940a7ccanary2026/11/121 天前
0.0.18-canary.20261021T223447Z.93.gb7a968e8aade2026/10/2222 天前
0.0.18-canary.20261020T233803Z.92.geb0b7920d37f2026/10/2123 天前
0.0.18-canary.20261020T000751Z.91.g9b142f78bcb12026/10/2024 天前
0.0.18-canary.20261018T140150Z.90.g32e23a749bfe2026/10/1826 天前

关于 @aufbau/lsp 的常见问题

@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 和提交记录判断。