# WordNumbering · 列表与多级编号

用平铺段落上的编号引用表达 Word 列表，集中维护编号定义与级别。不要同时把相同内容再包进通用列表容器。

用平铺段落上的编号引用表达 Word 列表，集中维护编号定义与级别。不要同时把相同内容再包进通用列表容器。

`@quirekit/classic-numbering-model` · **AGPL-3.0-only**

## 编辑器适用范围
层次：**共享文档能力**
| 编辑器 | 状态 | 所需装配与边界 |
| --- | --- | --- |
| Classic | 直接支持 | [createClassicWordPreset](/plugins/reference/create-classic-word-preset) — 使用 createClassicWordPreset 装配 Word 模型、布局与产品适配；具体控件、开关、宿主服务及文件支持以本页说明为准。批注、修订和内容控件的完整创作界面另需 Pro。 |
| Block | 需适配 | [createBlockNumberingExtensions](/plugins/reference/create-block-numbering-extensions) — 通过 createBlockNumberingExtensions 复用规范编号与命令，并提供连续流标记和 Block 列表控件接缝。只装 WordNumbering 不等于完成 Block 接入。 |

“直接支持”指已有上述产品装配；具体交互、宿主服务和格式支持仍有各自条件。[状态与接入规则](/plugins/compatibility)。许可独立显示。

## 接入

```sh
pnpm add @quirekit/classic-numbering-model@alpha
```

Word 产品通常从 [Word 预设](/plugins/reference/create-classic-word-preset)开始。这里的公开符号用于独立 Core 或自定义预设；需按领域补齐配套节点、命令和布局，已有同名扩展时不能重复追加。

```ts
import { WordNumbering } from '@quirekit/classic-numbering-model'

const numbering = WordNumbering.configure({ types: ['paragraph', 'heading'] })
```

安装时按包声明选择兼容版本，外部可用版本以分发源为准。本站使用工作区 Alpha；许可标签来自入口所属包，使用条件见[支持与许可](/support)。

## 按编辑器接入

以下片段沿用已挂载的宿主元素 `element`，宿主负责容器尺寸与保存；退出页面时调用 `instance.destroy()`。已有预设装配的能力不要再重复追加；需要宿主端口的入口应先完成下方配置。

### Classic

使用 createClassicWordPreset 装配 Word 模型、布局与产品适配；具体控件、开关、宿主服务及文件支持以本页说明为准。批注、修订和内容控件的完整创作界面另需 Pro。

[createClassicWordPreset](/plugins/reference/create-classic-word-preset)

```ts
import { createClassicEditor } from '@quirekit/classic-editor'
import '@quirekit/classic-editor/styles.css'
import { createClassicWordDefaultDocument, createClassicWordPreset } from '@quirekit/classic-docx'
import '@quirekit/classic-docx/styles.css'

const instance = createClassicEditor({
  element,
  preset: createClassicWordPreset(),
  document: createClassicWordDefaultDocument(),
})
```

### Block

通过 createBlockNumberingExtensions 复用规范编号与命令，并提供连续流标记和 Block 列表控件接缝。只装 WordNumbering 不等于完成 Block 接入。

[createBlockNumberingExtensions](/plugins/reference/create-block-numbering-extensions)

```ts
import { createBlockEditor } from '@quirekit/block-editor'
import '@quirekit/block-editor/styles.css'
import { createBlockNumberingExtensions } from '@quirekit/block-numbering'

const instance = createBlockEditor({
  element,
  extensions: [...createBlockNumberingExtensions()],
  content: { type: 'doc', content: [{ type: 'paragraph' }] },
})
```

## 配置

下面是扩展自身的默认选项。预设可以覆盖这些值；它们不等于当前文档属性。配置方法见[配置插件](/plugins/configuration)。

### types

需要保存平铺编号引用的段落类型名，例如 paragraph。不要填 bulletList 等容器名。

类型：`readonly string[]`

默认：`Object.freeze([ "paragraph", "heading" ])`

## 命令与运行方式

以下命令由此扩展直接提供，均在当前 Editor 上调用。命令是否可用由已安装 schema、当前选区与保护策略决定；可以先用 `editor.can()` 查询。

| 命令 | 参数签名 |
| --- | --- |
| `updateWordNumberingDefinition` | `updateWordNumberingDefinition(options: UpdateWordNumberingDefinitionOptions)` |
| `mergeWordNumberingRegistry` | `mergeWordNumberingRegistry(options: MergeWordNumberingRegistryOptions)` |
| `applyWordNumberingPreset` | `applyWordNumberingPreset(options: ApplyWordNumberingPresetOptions)` |
| `applyWordNumberingTemplate` | `applyWordNumberingTemplate(options: ApplyWordNumberingTemplateOptions)` |
| `toggleWordOrderedList` | `toggleWordOrderedList(options?: ToggleWordOrderedListOptions \| undefined)` |
| `toggleWordBulletList` | `toggleWordBulletList()` |
| `toggleWordTaskList` | `toggleWordTaskList(options?: ToggleWordTaskListOptions \| undefined)` |
| `clearWordList` | `clearWordList()` |
| `clearWordListAtPosition` | `clearWordListAtPosition(options: WordNumberingAtPositionOptions)` |
| `increaseWordListLevel` | `increaseWordListLevel()` |
| `decreaseWordListLevel` | `decreaseWordListLevel()` |
| `toggleWordTaskChecked` | `toggleWordTaskChecked()` |
| `setWordTaskChecked` | `setWordTaskChecked(options: SetWordTaskCheckedOptions)` |
| `toggleWordTaskAtPosition` | `toggleWordTaskAtPosition(options: ToggleWordTaskAtPositionOptions)` |
| `restartWordNumbering` | `restartWordNumbering(options: RestartWordNumberingOptions)` |
| `continueWordNumbering` | `continueWordNumbering()` |
| `restartWordNumberingAtPosition` | `restartWordNumberingAtPosition(options: RestartWordNumberingAtPositionOptions)` |
| `continueWordNumberingAtPosition` | `continueWordNumberingAtPosition(options: WordNumberingAtPositionOptions)` |

这里只展示参数签名。接界面时见[命令与控件](/build/commands)，正文变更继续经过同一事务与历史。

需要 DOCX 导入导出与修订留痕时，改用商业包 `@quirekit/classic-numbering` 中的同名扩展；它包含本扩展的全部能力。

## 其他公开入口

- `WordNumbering` · `@quirekit/classic-numbering`

## 下一步

返回[全部插件](/plugins)，或阅读[配置插件](/plugins/configuration)区分配置、文档属性与命令。

自己定义能力时见[扩展开发](/build/extension)；搭建完整宿主时见[构建产品](/build)。
