# @asciidoctor/core 中文文档

规范地址：https://npmcn.com/package/%40asciidoctor/core/

版本：4\.2\.1
npm 元数据更新时间：2026-11-02T14:07:20.916Z
中文译文更新时间：2026-11-06T22:34:21.087Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：3.4 MB，98 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=20
- 运行依赖：0 个
- peer 依赖：highlight\.js ^11\.0\.0
- 首次发布：2019-03-24T14:57:25.012Z
- 最新版本发布：2026-11-02T14:07:20.358Z
- 近 30 天下载量：629202（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：58（近 12 个月 23 个）

## 中文简介

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

## 安装

```sh
npm install @asciidoctor/core
```

也可以使用：`pnpm add @asciidoctor/core`、`yarn add @asciidoctor/core`、`bun add @asciidoctor/core`

## README

# 烟道核心

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

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

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

## 所需资源

节点.js 24

## 安装

```console
$ npm i @asciidoctor/core --save
```

## 使用量

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

**样本.js**

```javascript
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` 命令 :

```console
$ node sample.js
```

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

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

### 转换文件

**转换文件.js**

```javascript
import { convertFile } from '@asciidoctor/core'

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

### 不转换而装入

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

**装入.js**

```javascript
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)
```

## 更改日志

参见 [变化](https://github.com/asciidoctor/asciidoctor.js/blob/main/CHANGELOG.adoc) 用于完整更改列表.

## 常见问题

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

