dsh-md-plus 0.4.4 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -1
- package/README.md +9 -6
- package/lib/client.js +691 -86
- package/lib/mermaid-runtime.js +1 -1
- package/package.json +9 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,31 @@
|
|
|
1
1
|
# 更新日志
|
|
2
2
|
|
|
3
|
-
## 0.
|
|
3
|
+
## 0.5.0 —— 2026-11-04
|
|
4
|
+
|
|
5
|
+
- 表格支持按设置冻结前 N 行 / 前 M 列,默认冻结 1 行表头、0 列。
|
|
6
|
+
- 修复表格展开后「收起」按钮横向跟着滚动条跑的问题:展开态按钮横向改用 sticky 钉在可视区中间,纵向仍保持滚到表尾才出现。
|
|
7
|
+
- 表格复制按钮增加 TSV 和富文本(HTML)格式。
|
|
8
|
+
- 设置面板增加冻结行数 / 列数设置、「全部展开 / 全部收起」折叠操作和设置导入 / 导出;底部操作区重新分组,工具操作与主操作分层排列。
|
|
9
|
+
- Mermaid 卡片增加「复制图源」按钮;普通代码块增加下载为文件按钮。
|
|
10
|
+
- 修复「代码字号」留空或 0 时并未真正跟随宿主的问题:此前回退 `inherit` 会把代码块字号撑成正文大小,现在回退宿主 `--dsh-code-font-size` 变量。
|
|
11
|
+
- 测试补到 91 条,补强冻结行列、TSV / 富文本复制、全局折叠、复制图源和下载按钮等回归用例。
|
|
12
|
+
|
|
13
|
+
## 0.4.5 —— 2026-11-03
|
|
14
|
+
|
|
15
|
+
- 修复保存设置时无条件重绘所有 Mermaid 图、重置所有折叠状态的问题:只对真正变化的设置项执行重绘或重新测量,用户手动展开的长代码块和长表格不会被折叠回去。
|
|
16
|
+
- 优化长会话性能:流式输出期间跳过历史代码块的重复装饰;缓存设置读取,折叠扫描每轮只取一次阈值;同一轮扫描复用 Mermaid 图类型判断。
|
|
17
|
+
- 降低长会话内存:高亮去重键从 DOM 属性改为 WeakMap,避免完整源码复制进页面属性;定期清理已脱离文档的插件按钮。
|
|
18
|
+
- 工程化:`npm run check` 先构建再测试;补声明 `@shikijs/langs` 直接依赖;`publishConfig` 固定 npmjs registry;预览和展示脚本从 `package.json` 读取版本。
|
|
19
|
+
- 新增维护者发版脚本:自动修改 CHANGELOG 发布日期、提交、打 tag、推送代码和 tag,支持 `npm run release:dry` 预览。
|
|
20
|
+
- 修复 Mermaid「下载 PNG」不可用:Mermaid 改用 SVG 文本标签,避免 `foreignObject` 污染 canvas;导出失败时按钮会给出提示;新增 `npm run smoke` 真实浏览器验证。
|
|
21
|
+
- 修复折叠表格的 resize 监听泄漏和侧栏宽度变化时按钮偏位:表格卸载时自动清理监听,按钮位置改用 `ResizeObserver` 跟随。
|
|
22
|
+
- 修复合法 Mermaid 图的节点标签包含「Syntax error in text」时被误判为渲染失败。
|
|
23
|
+
- 修复表格复制按钮的反馈文案显示到另一颗按钮、剪贴板 API 被拒时没有 textarea 兜底;设置面板和图片预览打开时锁定背景滚动并约束键盘焦点;离开 Markdown 页面时移除设置齿轮。
|
|
24
|
+
- 修复 localStorage 读成功但写入失败时 Mermaid 配色只在存储里变化、当前会话不生效的问题。
|
|
25
|
+
- README 预览图改用 GitHub Pages 绝对地址,npm 包页面也能正常显示。
|
|
26
|
+
- 测试补到 85 条,补强设置保存不重置折叠、只改字号不重绘 Mermaid、流式输出不插按钮、源码不复制进属性、剪贴板降级、弹层滚动和主题存储等回归用例。
|
|
27
|
+
|
|
28
|
+
## 0.4.4 —— 2026-11-01
|
|
4
29
|
|
|
5
30
|
- 修复表格折叠按钮在低阈值和展开/收起后漂移、消失的问题:补齐表格折叠高度规则、重置滚动位置,并给按钮阴影留出空间。
|
|
6
31
|
|
package/README.md
CHANGED
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
给 DeepSeek Harness Web / Desktop 的 Markdown 阅读增强插件:重做代码块卡片、给 DSH 不认识的语言补语法高亮、自己渲染 mermaid 图形、重做表格样式并支持复制、图片点击放大,以及一个调整显示参数的设置面板。
|
|
4
4
|
|
|
5
|
-
[](https://josephhy.github.io/dsh-md-plus/docs/showcase/)
|
|
6
6
|
|
|
7
7
|
## 功能
|
|
8
8
|
|
|
9
|
-
- **代码块**:统一成完整卡片,头部显示 `</>` 图标和语言名(无语言显示 `Plain text
|
|
10
|
-
- **Mermaid**:围栏渲染成 SVG,可在「图形 /
|
|
9
|
+
- **代码块**:统一成完整卡片,头部显示 `</>` 图标和语言名(无语言显示 `Plain text`),保留宿主原生的换行与复制按钮,并支持下载为文件;顶栏与卡片同色。
|
|
10
|
+
- **Mermaid**:围栏渲染成 SVG,可在「图形 / 代码」间切换;支持复制图源、全屏查看(滚轮缩放、拖拽、双击适应、Esc 关闭)、四套配色,以及下载 SVG / PNG。
|
|
11
11
|
- **长内容折叠**:代码块、表格、图表超过阈值自动折叠,底部出现「展开 / 收起」,长日志和长表格不会撑满聊天。
|
|
12
|
-
- **表格**:浅色 /
|
|
12
|
+
- **表格**:浅色 / 深色两套样式,支持表内横向滚动;可按设置冻结前 N 行 / 前 M 列(默认冻结 1 行表头、0 列);每张表上方右侧支持 CSV / TSV / Markdown / 富文本复制。
|
|
13
13
|
- **图片放大**:只在旧宿主没有原生预览按钮时兜底,点击图片打开暗色预览,Esc 或点遮罩关闭;新版 DSH 的原生预览、头像、图标、代码块和链接里的图片都不接管。
|
|
14
|
-
- **设置面板**:右下角齿轮可调 Mermaid
|
|
14
|
+
- **设置面板**:右下角齿轮可调 Mermaid 配色、代码字号、图表默认视图、表格冻结行数 / 列数和三类折叠阈值,也能一键全部展开 / 收起、导出 / 导入设置文件;阈值下方会注明按高度判断。设置存在 `localStorage`,界面文案跟随页面 `<html lang>` 切换中英文。
|
|
15
15
|
|
|
16
16
|
## 安装与卸载
|
|
17
17
|
|
|
@@ -27,9 +27,12 @@ dsh plugin --profile desktop remove dsh-md-plus
|
|
|
27
27
|
```powershell
|
|
28
28
|
npm install # 顺带跑 prepare → build
|
|
29
29
|
npm run build # 产出 lib/ 下四个文件
|
|
30
|
-
npm run check #
|
|
30
|
+
npm run check # 构建 + 语法检查 + 91 条测试(check 会先 build)
|
|
31
|
+
npm run release:dry # 维护者发版:先看 CHANGELOG 日期 + 提交 + tag + push 计划
|
|
32
|
+
npm run release # 维护者发版:改 CHANGELOG 日期 + 提交 + 打 tag + 推送(tag 会触发 GitHub Actions 自动发 npm)
|
|
31
33
|
npm run preview # 生成 preview.html(含真渲出来的 mermaid 图)
|
|
32
34
|
npm run shot # 用 headless Chrome 把 preview.html 截成 docs/preview.png
|
|
35
|
+
npm run smoke # 用本机 Chrome 验证 Mermaid 渲染和 PNG 导出(Chrome 路径可用 CHROME_PATH 覆盖)
|
|
33
36
|
```
|
|
34
37
|
|
|
35
38
|
`npm run preview` / `scripts/showcase.mjs` 需要读取 DSH 安装目录里的主题和前端资源;如果本机 DSH 是 `app.asar` 包,请先解包到目录,并把 `DSH_APP_DIR` 指向该目录。
|