DeepSeek Harness Hub
← 返回列表

Markdown 导出器AnakinCao/dsh-md-export

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

把当前 md 一键存为独立 HTML 或打印成 PDF

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/26 · 已提供中文文档

DSH 网页插件(dsh-better-sidebar 配套插件):将当前 .md 文件导出为独立 HTML(内联 Mermaid)或 PDF——导出按钮位于 Markdown 工具栏上

综合分
28.6
GitHub 分
28.6
用户评分
★ Stars
1
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add AnakinCao/dsh-md-export
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-md-export

English: README.md

DSH(DeepSeek Harness)Web 插件 —— dsh-better-sidebar Markdown 导出扩展。

在 better-sidebar 的 Markdown 文件预览器工具栏上新增一个「导出」按钮,点击后出现下拉菜单,可选择:

- 📄 保存 HTML(同目录) —— 把当前 .md 文件渲染为独立 .html 直接保存到 md 文件同目录(Markdown 表格 / 代码块 / Mermaid 图表均已渲染内联,页面布局跟随原 md 预览主题,非 A4 打印导向)
- 🖨️ 导出 PDF(打印) —— 打开浏览器打印对话框(打印内容即渲染后的文档),选择「另存为 PDF」即可生成 PDF

特性

- 零依赖、不替换内置功能:不覆盖 better-sidebar 自带的 Markdown 预览/编辑(预览、编辑、保存、Mermaid 渲染全部保留),只是在工具栏旁追加导出按钮
- 所见即所得:导出的 HTML 内容直接取自内置预览器已渲染的 DOM(含 Mermaid SVG),无需二次渲染
- 保存到 md 同目录:通过 better-sidebar 的 /sidebar/api/fs.write 通道把 HTML 写入 md 所在目录(文件名同 md、扩展名 .html);若会话识别失败自动回退浏览器下载
- 布局跟随原 md 预览:导出 HTML 使用当前预览主题的配色与排版(深/浅色自动跟随),内容宽度自适应,不使用 A4 打印尺寸
- 编辑模式兼容:若当前处于编辑模式且内容未保存,点击导出会自动切到预览再导出
- 自动跟随:切换文件、切换预览/编辑模式时,导出按钮自动出现在 Markdown 工具栏上

前置

- DSH dsh web 可正常运行
- 已安装 dsh-better-sidebar(含聚合包 @linxin666/dsh-web-ui-all 带入的场景)

安装

dsh plugin --profile web add

装完重启 dsh web(新增 bundle 需 host 侧重载),再硬刷新浏览器(Cmd/Ctrl+Shift+R)。

侧边栏打开任一 .md 文件,工具栏「预览 | 编辑」切换旁即出现「导出 ▼」按钮。

使用

1. 在 better-sidebar 打开任意 .md 文件(如 docs/AOI端保存图片逻辑.md)
2. 点击工具栏「导出 ▼」
3. 选择:
- 保存 HTML(同目录):HTML 直接写入 md 同目录(如 docs/AOI端保存图片逻辑.html),页面布局与 md 预览一致
- 导出 PDF(打印):弹出打印对话框,选择「另存为 PDF」保存

开发

node --check lib/client.js   # 语法校验(本插件为手写单文件 client bundle,无构建步骤)

- lib/index.js —— 宿主侧占位插件(空 apply,使 loader entry 挂载成功)
- lib/client.js —— 客户端逻辑:MutationObserver 监听 markdown 工具栏 → 注入导出按钮 + 下拉 → 抓取预览 DOM → /sidebar/api/fs.write 保存同目录 / 触发打印

实现说明

| 环节 | 方式 |
|---|---|
| 按钮注入 | MutationObserver 监听 document.body,找到 .nArs4W_editorModeToggle(Markdown/HTML 预览器工具栏)且当前文件为 .md 时注入 |
| 路径解析 | 从 .nArs4W_editorPathInput 的 title 属性取 md 绝对路径,输出文件为同目录同名 .html |
| 会话识别 | 遍历 localStorage dsh-sidebar:v1:* 键,取最新会话 sessionId |
| 保存到同目录 | POST /sidebar/api/fs.write(payload: sessionId + 绝对路径 + HTML 内容);失败回退浏览器下载 |
| HTML 布局 | 从 .nArs4W_editorMd 与页面主题读取配色/字体,导出内容宽度自适应(非 A4) |
| PDF 导出 | 相同 HTML 写入隐藏 iframe → window.print() → 用户在打印对话框选「另存为 PDF」 |

已知限制

- PDF 导出依赖浏览器打印功能(Chrome/Edge 均可「另存为 PDF」),不是直接生成 .pdf 二进制;因此 PDF 无法直接保存到 md 同目录
- HTML 保存到同目录依赖会话识别(localStorage);极端情况下会回退为浏览器下载
- 依赖 better-sidebar 内部 CSS 类名(nArs4W_ 前缀),若 better-sidebar 大版本升级改类名,需同步更新
- 仅对 .md 文件生效;.markdown 扩展名同样支持

License

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

同作者(AnakinCao)的其他插件

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群