🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

公式块归一化 TianzeLuo/dsh-tex-block-normalizer

DeepSeek Harness
TianzeLuo36 天前有提交已提供中文文档扫描:未发现敏感能力

DSH Web 客户端插件:修好 Pandoc 风格 $$ 公式块在 DSH…

28.4/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/20 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add TianzeLuo/dsh-tex-block-normalizer
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · chat
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 36 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/2(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 修复行间公式块解析
  • 消除红色报错

DSH 插件:修复 Pandoc 风格的 $$ 行间公式块,DSH 会把它误解析成红色 KaTeX 解析错误。

README

由 DeepSeek 最新模型翻译生成
dsh-tex-block-normalizer DSH Web 客户端插件:修好 Pandoc 风格 $$ 公式块在 DSH 里被误解析的问题——公式首行被静默丢弃、正文/表格/后续公式被吞进一个 KaTeX 报错节点,整段变成红色纯文本。 English: a DSH web-client plugin that normalizes Pandoc-style $$ display-math blocks before Markdown parsing, so messages other renderers show correctly no longer turn into a red KaTeX parse error in the DSH GUI. 症状 模型常这样写行间公式(开栏 $$ 与内容同行、正文跨行、收尾 $$ 贴在最后一个内容行末): $$\frac = 1 \quad\Longrightarrow\quad x = y$$ 在 DSH 里它会:首行被当成 info 字符串静默丢弃;$$ 块永不闭合,从第二行到消息结尾全部被吞;KaTeX 拿到这一大段非 TeX 文本后报 ParseError: ... Can't use function '$' in math mode ...,于是整段显示为红色纯文本(悬停可见该报错)。
展开完整文档(README 剩余 1 节)
dsh-tex-block-normalizer

DSH Web 客户端插件:修好 Pandoc 风格 $$ 公式块在 DSH 里被误解析的问题——公式首行被静默丢弃、正文/表格/后续公式被吞进一个 KaTeX 报错节点,整段变成红色纯文本。

English: a DSH web-client plugin that normalizes Pandoc-style $$ display-math blocks before Markdown parsing, so messages other renderers show correctly no longer turn into a red KaTeX parse error in the DSH GUI.

症状

模型常这样写行间公式(开栏 $$ 与内容同行、正文跨行、收尾 $$ 贴在最后一个内容行末):

$$\frac = 1
\quad\Longrightarrow\quad
x = y$$

在 DSH 里它会:首行被当成 info 字符串静默丢弃;$$ 块永不闭合,从第二行到消息结尾全部被吞;KaTeX 拿到这一大段非 TeX 文本后报 ParseError: ... Can't use function '$' in math mode ...,于是整段显示为红色纯文本(悬停可见该报错)。同一个文件在 VS Code 的 Markdown 预览里是正常的。

DSH 接受的形状

| 写法 | DSH 0.1.7-rc.1 |
| $$ 独占一行 … $$ 独占一行 | ✅ 正确 |
| 整条公式一行 $$ … $$ | ✅ 正确 |
| $$内容 开头、$$ 独占一行收尾 | ⚠️ 首行被静默丢弃 |
| $$ 独占一行、内容$$ 收尾 | ❌ 吞掉文档剩余部分 |
| $$内容 开头、内容$$ 收尾 | ❌ 丢首行 + 吞文档 |

插件把后三种统一搬成第一种:只移动 $$ 的换行位置,块内内容一字不改。对会话里已经记录的历史消息同样生效(归一化发生在渲染时,不修改 session 数据)。

安装

dsh plugin --profile web add

然后重启 dsh web 并刷新页面。

验证

- 刷新后控制台出现一次 [dsh-tex-block-normalizer] active: Pandoc-style $$ blocks are normalized before Markdown parsing。
- devtools 里查看 __DSH_TEX_BLOCK_NORMALIZER__ → { installed: true, reason: 'installed', stats: { calls, rewrites } };rewrites 增长即表示确实改写过度。
- 打开此前报错的历史消息,红色纯文本消失、公式正常排版。
- 临时关闭:页面加载前设 globalThis.__DSH_TEX_BLOCK_NORMALIZER_DISABLE__ = true。
- 命令行审计任意 Markdown(用 DSH 的真实语法 + KaTeX 做归一化前后对照):

node scripts/audit-markdown.mjs

开发

npm install # 仅测试用的 parser / katex devDependencies
npm test # 21 项:归一化用例 + 打包产物 + DSH 语法验收
npm run build # 改过 lib/normalize.js 后重新生成 lib/client.js

限制

- 块引用 / 列表项里的 $$(> $$a、- $$a)不处理。
- 完全没有收尾 $$ 的块保持原样,因此仍会吞到文件尾。
- 依赖 React.memo 的 .type 是内层渲染函数这一 React 内部细节;取不到时插件安静地变成 no-op,不会报错影响界面。

完整说明见 docs/limitations.md。

文档

| 文档 | 内容 |
| docs/root-cause.md | 为什么 DSH 会这样解析:语法模型、上游实现位置、复现证据、与 VS Code 的差异 |
| docs/how-it-works.md | 插件如何在不改动上游的前提下生效:seed 模块共享、MarkdownText 包装、生命周期与守卫 |
| docs/development.md | 构建产物与单一事实来源、测试策略、夹具出处、审计工具 |
| docs/limitations.md | 边界条件与背后的设计取舍 |

License

MIT
预览分享卡片长什么样 ↓TianzeLuo/dsh-tex-block-normalizer
分享 · DeepSeek Harness Hub
TianzeLuo/dsh-tex-block-normalizer

DSH Web 客户端插件:修好 Pandoc 风格 $$ 公式块在 DSH…

回到顶部