@asciidoctor/core

中文文档
4.2.1发布于 2026/11/02MITTypeScriptESM + CJS零依赖构建来源已验证近 30 天下载 62.9万

Ascidoctor.js:由Ascidoctor提供动力的JavaScript中的AsciiDoc

中文使用文档
文档目录6 节
  1. 所需资源
  2. 安装
  3. 使用量
  4. 转换文件
  5. 不转换而装入
  6. 更改日志

烟道核心

这个软件包提供了本地JavaScript执行 Asciidodor. 该代码来自 Ruby 源代码使用 克劳德代码 (claude-sonnet-4-6),并被人类审查. 它是一个纯粹的无害环境管理库,揭示了同样的功能:

  • 解析器
  • 内置转换器
  • 扩展

API 是一个同步: 所有解析和转换操作返回 a Promise。 。 。 .

所需资源

节点.js 24

安装

$ npm i @asciidoctor/core --save

使用量

以下是将 AsciiDoc 转换为 HTML5 的简单示例 :

样本.js

import { convert } from '@asciidoctor/core' // ①

const content = 'https://asciidoctor.org[*Asciidoctor*] running on Node.js!'
const html = await convert(content) // ②
console.log(html) // ③
  1. 导入 convert 从 Ascidoctor 本地图书馆(ESM, 命名导出)
  2. 将 AsciiDoc 内容转换为 HTML5——调用返回 a Promise 并且必须等待
  3. 打印 HTML5 输出到控制台

文件另存为 样本.js 并运行它使用 node 命令 :

$ node sample.js

您应该在终端中看到以下输出 :

<div class="paragraph">
<p><a href="https://asciidoctor.org"><strong>Asciidoctor</strong></a> running on Node.js!</p>
</div>

转换文件

转换文件.js

import { convertFile } from '@asciidoctor/core'

const html = await convertFile('document.adoc', { safe: 'safe' })
console.log(html)

不转换而装入

使用 load 在转换(或改为)之前需要检查已解析的文档模型时:

装入.js

import { load } from '@asciidoctor/core'

const doc = await load('== Hello, World!\n\nThis is Asciidoctor core.')
console.log(doc.getTitle())    // Hello, World!
console.log(doc.getBlocks())   // array of top-level blocks
const html = await doc.convert()
console.log(html)

更改日志

参见 变化 用于完整更改列表.

版本与发布记录

@asciidoctor/core 共发布 58 个版本,首次发布于 2019/03/24;过去 12 个月发布了 23 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
4.2.1latest2026/11/025 天前
4.2.02026/11/025 天前
4.1.12026/10/051 个月前
4.1.02026/09/221 个月前
4.0.112026/08/182 个月前
4.0.102026/08/182 个月前

其他发布通道:latest-2 → 2.2.9,testing → 4.0.0-alpha.6。

关于 @asciidoctor/core 的常见问题

@asciidoctor/core 是什么?

Ascidoctor.js:由Ascidoctor提供动力的JavaScript中的AsciiDoc

如何安装 @asciidoctor/core?

在项目目录运行 npm install @asciidoctor/core,或使用 pnpm add / yarn add / bun add。

@asciidoctor/core 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@asciidoctor/core 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@asciidoctor/core 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@asciidoctor/core 可以商用吗?

@asciidoctor/core 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@asciidoctor/core 的下载量有多少?

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

@asciidoctor/core 还在维护吗?

最新版本 4.2.1 发布于 2026/11/02(5 天前);至今共发布 58 个版本,其中过去 12 个月发布了 23 个;首次发布于 2019/03/24。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。