🎁 100 free AI Toolkit licenses – apply by August 15.Learn more

更新日志

本项目的所有重大变更将记录在此文件中。

[2026-08-01]

新增

  • 搜索和替换:新增开源的搜索和替换面板,支持经过防抖处理的实时高亮、从 1 开始的结果计数器、循环导航、区分大小写和全字匹配选项、带示例模式的正则表达式搜索、可控的放置位置和打开状态、替换和全部替换操作,以及 Mod+F、方向键和 Enter 快捷键。在结果之间移动时只更新高亮,因此编辑器选区和工具栏状态会保持在用户离开时的位置。使用 npx @tiptap/cli@latest add search-and-replace 安装。
  • 按钮:新增可复用的 check 变体,这是一种复选框样式的切换按钮,提供 role="checkbox"、自身的选中指示器,并且默认在小尺寸下使用幽灵样式。使用 aria-checked 控制其状态,该属性也接受 mixed
  • 简单编辑器模板:模板现在包含搜索和替换功能,并在工具栏中提供触发按钮,同时在工具栏下方停靠一个面板。

修复

  • 工具栏循环焦点:现在只有当焦点已经位于工具栏内部时,工具栏才会将焦点恢复到其中的项目,因此从工具栏打开的面板和弹出框可以保留它们所请求的焦点。
  • 链接弹出框autoOpenOnLinkActive 现在还要求编辑器处于聚焦状态,因此活动链接不会再因程序化的选区变更而打开弹出框,例如通过搜索面板进行的选区变更。

现有安装可以使用 npx @tiptap/cli@latest add button toolbar link-popover -o 更新发生变化的组件。如果你在 2026-07-31(即本条目之前的一天)安装了该面板,请将 search-and-replace 添加到列表中,以获取结果导航行为。-o 标志会覆盖已安装的组件文件,因此请先检查本地自定义内容。

[2026-07-24]

修复

  • Image Node Pro:修复周围文档编辑后图像选择状态变旧的问题,阻止原生光标导航进入隐藏标题,并增强 Chromium、Firefox 和 WebKit 中重复点击、标题生命周期、删除、调整大小及只读状态切换的稳定性。
  • Image Node Pro HTML:保留无标题和带标题图像所配置的 HTML 属性,规范化有效的图像尺寸,统一应用 allowBase64,并防止多图 figure 被合并为单个图像节点。
  • Image 浮动工具栏:图像点击后刷新由选择状态驱动的可见性,使工具栏能够可靠地为已选中的图像重新打开。

变更

  • Image Node Pro 键盘和撤销行为:新增可预测的箭头导航,为 EnterBackspaceDeleteEscape 增加标题边界处理,支持渐进式全选,并为图像删除和调整大小设置独立的撤销边界。
  • 工具栏键盘导航:新增水平循环焦点、循环箭头导航、使用 HomeEnd 导航到首项/末项、禁用控件跟踪,以及正常的 TabShift+Tab 退出行为。
  • Delete Node Button:保留扩展所拥有的 Backspace 处理逻辑,仅在共享删除操作成功后阻止浏览器行为,并将节点删除隔离为独立的撤销步骤。

现有安装可以使用 npx @tiptap/cli@latest add image-node-pro floating-element toolbar -o 更新完整的一组已复制源文件。-o 标志会覆盖已安装的组件文件,因此请先检查本地自定义内容。

[2026-07-09]

新增

  • 表格节点:支持 Pages 扩展。当编辑器注册了 Pages 扩展后,表格现在会按行跨分页边界拆分——保留列宽、合并单元格和边框——其中带有 rowspan 的单元格会在分页断点处延续,过大的单元格会变为可滚动,以确保分页保持稳定。无需任何配置;在未启用 Pages 时行为保持不变。

修复

  • 表格选择覆盖层cellMenu 属性现在必须是稳定的组件引用。传入内联箭头函数会导致菜单在每次渲染时都获得新的组件标识,从而重新挂载其子树,并可能抛出 "Maximum update depth exceeded"。请将 cell menu 定义在模块作用域中(或对其进行 memoize);覆盖层和 cell menu 也会对重复的菜单打开状态更新进行保护。
  • 编辑器生命周期:增强了 commenttext-alignundo-redo 组件以及 tiptap-utils 对已销毁或已卸载编辑器的防护——增加了 isDestroyed/mounted-view 检查,并在 editor.can() 周围添加错误处理,以防止在清理阶段出现异常。

[2026-03-26]

新增

  • TOC:新增支持为目录(TOC)节点预览查找最近的可滚动父元素。

变更

  • TOC:改进目录(TOC)中的标题组织方式,以提升性能和可读性。

[2026-03-25]

新增

  • 缩进支持:向编辑器添加了 indentoutdent 命令,允许用户调整块缩进级别。目前此功能仅适用于类 Notion 模板。

[2026-02-19]

变更

  • AI 菜单:为 <AiMenu> 添加了 anchorToSelection 属性,用于将菜单锚定到当前文本选区,且菜单宽度与编辑器宽度一致。

[2026-02-10]

修复

  • 工具栏按钮:修正按钮显示逻辑,之前未设置 hideWhenUnavailable 时按钮错误隐藏。按钮现在默认始终显示,只有当 hideWhenUnavailable={true} 且所需扩展/模式不可用时才隐藏。
  • 链接弹出框:在 setMark("link") 周围添加错误处理,避免在某些编辑器状态下抛出未捕获异常。
  • 转换下拉菜单:新增缺失的 !editor.isEditable 条件,避免只读编辑器中显示该菜单。
  • 标题节点:修复 margin-top 取消样式,确保正确应用于首个标题及其前方为 ProseMirror 小部件(如装饰、节点视图)的标题。
  • 颜色高亮:将 toggleMark("highlight", { color }) 的调用改为正确的 toggleHighlight({ color }),实现正确切换行为。

变更

  • CLI -c 参数的认证检查:使用 -c(组件)标志时,CLI 现在验证 .npmrc 身份认证,防止未认证用户发生静默失败。
  • 自动生成 scss.d.ts:通过 CLI 安装包含 SCSS 文件的组件时,自动创建 SCSS 类型声明文件。
  • 嵌套列表样式:新增最多 8 级嵌套列表样式循环:
    • 有序列表:decimal → lower-alpha → lower-roman → decimal → …
    • 无序列表:disc → circle → square → disc → …
  • 颜色高亮的 useColorValue 属性:新增支持直接使用十六进制颜色值代替 CSS 变量,确保在不支持 CSS 自定义属性的环境下也能应用高亮样式。
  • 标题下拉菜单:新增支持自定义 children 属性,允许用户覆盖默认的图标和箭头渲染。
  • 内联图片:段落内图片现设为 inline-block 显示。

移除

  • 评论页面示例:移除 /comments/preview/templates/comments 路由及相关所有组件。

[2026-02-03]

  • 更新 CLI 版本至 3.18.0,修复自定义路径下 -p 参数问题。

[2026-01-15]

修复

  • 避免在多选多个区块时执行“转换为”操作,确保节点切换仅应用于单个被选中的区块。
    请运行 pnpm dlx @tiptap/cli@latest add heading-button blockquote-button list-button text-button code-block-button -o 来更新现有代码。

[2026-01-09]

新增

  • 带节点预览的目录(TOC)功能
  • 更新 CLI 版本至 3.11.1。

[2026-01-05]

新增

  • FloatingElement 添加 resetTextSelectionOnClose 属性,增加编辑器失焦时保留当前光标选区的选项。

[2025-12-15]

修复

  • 移除图片的 stopEvent,修复复制粘贴内联图片时的问题。

[2025-12-04]

新增

  • 退格键时合并相邻列表,防止垂直间距卡顿

说明

  • 新增:新功能
  • 变更:现有功能的变动
  • 弃用:即将移除的功能
  • 移除:已移除的功能
  • 修复:错误修正
  • 安全:安全修复与改进。