dsh-markdown-preview: DSH Web 插件的 Markdown 与 KaTeX 实时预览

在 DeepSeek Harness (DSH) 的使用流程中,直接在输入框编写 Markdown 内容往往缺乏即时反馈。特别是涉及数学公式或复杂排版时,这种盲打体验较差。dsh-markdown-preview 插件通过官方提供的 conversation.input.dock 槽位,在输入框上方实现了一个独立的预览面板,解决了这一问题。

这是一个 DSH Web 插件。它利用官方 Slot 注入,在聊天输入框上方提供实时的 Markdown 渲染和 KaTeX 公式展示。插件由 thomasly 维护,采用 MIT 协议,不修改 DSH 核心代码。

核心功能

  1. Markdown 实时预览:支持加粗、斜体、行内/代码块、删除线、引用、列表、表格等语法的即时渲染。
  2. KaTeX 公式支持:通过内联构建的渲染器,支持 $x+y$ 行内公式与 $$...$$ 块级公式的实时显示。
  3. 吸附式布局:预览面板吸附在输入卡片上沿。输入框本身位置固定,不会因预览内容的增减而跳动。
  4. 交互控制:提供一键收起/展开功能,状态会保存在本地存储中。
  5. 安全与轻量:草稿中的原始 HTML 会被转义,防止恶意标签执行;草稿为空时不渲染,避免布局抖动。

安装与启用

安装方式分为两种,需根据实际情况选择其一,切勿混用。

方式一:官方插件命令(推荐)

这是通过 DSH 发布渠道安装的方式。

dsh plugin --profile web add github:thomasly/dsh-markdown-preview

执行命令后,需要重启 dsh web 以使插件生效。

方式二:本地手动挂载

这种方式需要手动编辑配置文件。

  1. 克隆插件到 profile 的插件目录:
    mkdir -p ~/.dsh/profiles/web/plugins
    git clone https://github.com/thomasly/dsh-markdown-preview.git ~/.dsh/profiles/web/plugins/dsh-markdown-preview
  1. 链接进 profile 依赖:
    cd ~/.dsh/profiles/web
    pnpm add --save-exact file:./plugins/dsh-markdown-preview
  1. 在 ~/.dsh/profiles/web/cordis.patch.yml 中追加注册条目:
    # 在 insert 下添加
    - id: markdown-preview
      name: dsh-markdown-preview
  1. 重启 dsh web 生效。

使用方法

打开任意会话,直接在输入框输入 Markdown 即可看到上方变化。以下是一些典型用法:

  • 这是 **加粗** 的文字:预览中文字会立即变粗。
  • 行内公式 $x+y$:预览中会显示数学符号。
  • 块级公式:使用 $$ 开头和结尾,预览中会居中渲染。
  • 清空输入框:预览面板自动消失。

注意:预览只是辅助显示。发送的内容始终是原始 Markdown 文本,由 DSH 自带的渲染器处理,二者互不影响。

注意事项

  • 安全性:插件会对草稿中的 HTML 进行转义,只渲染 Markdown 结构,粘贴恶意标签不会执行。
  • 权限:作为 DSH 插件,其运行权限与当前 DSH 进程一致。安装前请检查源码与许可证。
  • 兼容性:该插件注册官方 Slot,与输入框原有功能(如 / 触发、附件、plan 模式等)天然兼容。

总结

dsh-markdown-preview 是一个轻量级的辅助工具,它在不修改 DSH 核心代码的前提下,为 Web 客户端提供了所见即所得的 Markdown 预览体验。更多细节可参考项目目录或GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜