Skip to content

快速差异 Quick Diff

字数
421 字
阅读时间
2 分钟

快速差异 (quick-diff) 用于在弹窗中对比两个页面版本之间的差异,无需跳转到原生差异对比页面。

使用方式

在快速编辑中使用

在快速编辑弹窗中,点击「差异」按钮可对比当前编辑内容与原始内容之间的差异。快捷键默认为 Ctrl+D

在页面历史中使用

在页面的修订历史页面,原生「比较已选版本」按钮旁会自动添加一个「快速差异」按钮,点击即可在弹窗中查看差异。

差异查看器功能

  • 以表格形式展示差异,复用 MediaWiki 原生差异样式
  • 显示版本作者、时间戳、编辑摘要等元信息
  • 支持通过前/后版本按钮导航历史
  • 可从差异查看器直接跳转到快速编辑
  • 可跳转到原始差异对比页面

配置项

配置项类型默认值说明
quickDiff.keyshortcutstringctrl-d在快速编辑弹窗中打开差异的快捷键

For Developers

Public API

ts
ctx.quickDiff.comparePages(
  options: Partial<CompareApiRequestOptions>,
  modal?: IPEModal,
  modalOptions?: Partial<IPEModalOptions>
): IPEModal

ctx.quickDiff.createQuickDiffButton(
  payload: Partial<CompareApiRequestOptions>,
  options?: { label?: ReactNode; icon?: ReactNode }
): HTMLAnchorElement

CompareApiRequestOptions supports MediaWiki compare API params:

ts
interface CompareApiRequestOptions {
  fromtitle: string; fromid: number; fromrev: number; fromtext: string
  totitle: string;   toid: number;   torev: number;   totext: string
  torelative?: 'cur' | 'prev' | 'next'
  frompst: boolean;  topst: boolean
  difftype: 'table' | 'unified'
  // ...more MediaWiki compare API params
}

Events

EventDescription
quick-diff/init-optionsOptions initialized. Payload: { ctx, options }
quick-diff/loadedDiff data loaded and rendered. Payload: { ctx, modal, compare }
quick-diff/quick-edit-modalDiff opened from within quick-edit modal. Payload: { ctx, modal, wikiPage }

贡献者

The avatar of contributor named as dragon-fish dragon-fish
The avatar of contributor named as Claude Opus 4.6 Claude Opus 4.6

✏️ InPageEdit NEXT