跳到主内容

dsh-diff-viewer 使用指南

为 DSH Web 替换 write/edit 工具调用的 diff 渲染:单栏/双栏、变更条、词级高亮、上下文折叠、窗口化渲染。

本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。

本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。

快速上手

dsh-diff-viewer

— 源: plugin_wiki.wiki_content

安装与验证

dsh plugin --profile web add github:lehhair/dsh-diff-viewer

复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。

— 源: plugins.install

关键要点

  • unified 单栏默认:同一 gutter 并排显示旧/新行号,无左右错位;split 双栏可选(viewMode)
  • 变更条:新增实心绿条、删除条纹红条;行背景色带统一延伸到最宽行
  • 词级高亮:行内改动叠加绿/红标记,shiki 语法着色(highlightLines)
  • 上下文折叠:长段未变更行折叠为"N 行未变更",向上/向下/全部展开
  • 窗口化渲染:固定行高窗口化,大 diff 不挂载全部行;sticky 横向滚动条(hover 显现)

— 源: plugin_wiki.readme_zh (fallback readme_raw)

常见问题

这个插件解决什么问题?

替换 DSH Web 内置的 write/edit 工具调用 diff 卡片,提供更清晰的单栏/双栏视图、变更条、词级标记与长 diff 折叠。

安装后需要做什么额外配置吗?

无需任何配置。插件只注册到 ui-tool 的 diff 卡片槽位,覆盖 write/edit 两种工具调用,卸载即还原官方原版。

编辑/写入调用结果是展开还是收起?

edit 成功完成的结果默认展开(直接看到替换 diff),write 与运行中、出错的调用保持默认收起状态。

单栏与双栏如何选择?

由容器宽度自动决定:宽度 < 800px 用单栏(unified),≥ 800px 用双栏(split)。纯新增或纯删除会强制回退单栏。

卸载后会发生什么?

使用 dsh plugin --profile web remove @dsh-external/dsh-diff-viewer 即可,插件以更低的 priority 注册槽位,卸载后官方行自动恢复。

只支持 DSH Web 端吗?

是的。package.json 的 dsh.client.platform 声明为 web,客户端注入 @deepseek-ai/dsh-client-runtime,不涉及宿主侧逻辑。

升级时为什么会装到旧版本?

pnpm 会按 URL 缓存 tarball。同一 latest 链接出新版本后可能命中旧缓存,需要先 remove 再 pnpm store prune 后重装。

— 源: plugin_wiki.faq_json

兼容性

  • DSH: >=0.0.1
  • Node: 未声明
  • Platforms: 跨平台

— 源: plugin_wiki.compatibility_json

踩坑提醒

安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。

— 来源:通用规则