dsh-molingTex:在 DSH 右侧栏完成本地 LaTeX 编辑、编译与预览

前言

在 DSH 里写论文或技术文档时,常见做法是:左侧对话让 Agent 改稿,本地再用编辑器编译、看 PDF、对照日志。窗口来回切,选中段落送进会话也要自己复制路径和行号。dsh-molingTex(包名 dsh-plugin-moling-latex,内部代号 moling_latex)把墨灵 TeX 桌面版的工作流搬进 DSH:右侧栏提供目录树、编辑、编译、日志与 PDF 预览,并向本体注册 5 个 Agent 工具,让模型可以直接编译、读状态、做 SyncTeX、清理辅助文件、读大纲。下面介绍它的接入方式、面板能力与安装步骤。

这是什么

维护者为 dichi123456,分类为工作流,仓库 dichi123456/dsh-molingTex,当前发布安装包版本为 0.6.0(MIT 许可证)。插件分两部分:

  • 右侧栏工作台:在 DSH 主界面右侧栏注册「墨灵 LaTeX」标签页(与文档、文件、指南并列;指南页有入口卡片);
  • 5 个 Agent 工具:latex_compile、latex_status、latex_synctex、latex_clean、latex_outline。

宿主通过前缀路由 /moling/api 提供 HTTP 能力;面板同源 fetch 调用,与 dsh-drawai 同类插件走同一条已验证路径。第三方动态插件不依赖 Connection RPC 或 dsh.client 的 Remote 服务自行实现文件访问。

右侧栏如何挂载

右侧栏注册分两步,均在 ctx.effect 中完成:先 ctx.sidebarRightTabs.register 声明 kind: 'moling' 的标签类型,再向 sidebar.right.pane.tab 注入正文组件。打开方式:展开右侧栏 → 指南页「墨灵 LaTeX」卡片;或标签条 + → 指南 → 卡片。

限制来自右栏本身:按会话存在,无会话则无内容;窄栏为单列布局。会话内 UI 状态放在模块级 store(切标签不丢),但不自动恢复上次打开的文件或工作区;重开 DSH 或刷新后从启动页开始,仅持久化「最近」、引擎、过滤词、分栏宽度等。

面板能力概览

启动页

每次进入先看「最近」列表,点项目或文件才进入工作台;不会自动打开某个工作区。

  1. 启动区:新建文档(ctexart 骨架,Ctrl+N)、打开文件夹…(Ctrl+K)、打开文件…(Ctrl+O)。
  2. 最近:记录工作区或单文件;路径使用绝对路径 abs 与相对路径 value 并存,避免宿主 open-file 按 DSH 进程 cwd 误解析。
  3. 模板:新建中文文档(ctexart:标题、作者、日期、一节正文)。
  4. 提示栏:快捷键、TeX 环境版本与 bin 目录、数据通道状态。

工作台

顶部有工作区连接状态、分体编译按钮(方式可改);左栏为多标签 LaTeX 编辑器;中间 tex 与 PDF 之间可拖动分隔条(20%–80%);右栏在日志与 PDF 间切换。提纲 在编辑区左下角浮出章节列表(\part 至 \paragraph),点击跳转行号,解析在浏览器内完成。PDF 为逐页 PNG(pdftoppm 栅格化),可 Ctrl+滚轮缩放,单击页面可 SyncTeX 回到源码;日志中错误行可点击跳到源码。

编辑器核心为内联的 CodeMirror 6(大文件虚拟化渲染);加载失败时回退透明 textarea 叠高亮层。F5 编译、Ctrl+S 保存;右键可将选区带来源行号的 latex 代码块送入当前会话输入框(项目须已连接 DSH 工作区,否则提示先连接)。

与左侧工作区联动

顶栏「连接状态胶囊」将当前项目目录与 DSH 工作区列表比对:已连接(绿)、同名不同路径(黄)、未连接(灰)。仅 kind === 'workspace' 的条目算连接;kind: 'opened' 不算。未连接时点击调用 workspaces.create({ path }) 把目录加入左侧工作区。

SyncTeX

编译默认带 -synctex=1。源码 → PDF:编辑器右键「定位到 PDF 位置」;PDF → 源码:预览页单击。结果写在底部状态栏。

Agent 工具

工具 作用
latex_compile 编译 .tex:quick 单趟 draft;full 含 bibtex 与 Rerun;clean 先清辅助再走 full
latex_status 探测 TeX Live / MiKTeX:bin、版本、六类引擎路径
latex_synctex 源码行 ↔ PDF 坐标双向同步
latex_clean 删除 .aux/.log/.synctex.gz 等,不删 .tex/.pdf/.bib
latex_outline 章节标题与行号、\input/\include、\label/\cite 统计

引擎缺省 auto:ctex 等中文文档倾向 xelatex;IEEEtran/article 等倾向 pdflatex。

安装与启用

插件以当前 DSH 进程权限访问本机文件与 TeX;安装前建议在 GitHub 阅读源码与许可证。需要 Node.js >= 18(见 package.json)。

在 DSH 中让 agent 执行 plugin_manager install_bundle,或于插件管理器填写相同地址。

发布包(固定 v0.6.0):

plugin_manager install_bundle  https://github.com/dichi123456/dsh-molingTex/releases/download/v0.6.0/dsh-plugin-moling-latex-0.6.0.tgz

Git 源(跟随 main):

plugin_manager install_bundle  github:dichi123456/dsh-molingTex

发布列表见:https://github.com/dichi123456/dsh-molingTex/releases。README 记载两种方式均可安装 0.6.0(含 lib/vendor/cm6.js)。

典型用法

  1. 安装并重启或刷新 DSH 后,展开右侧栏,从指南打开「墨灵 LaTeX」。
  2. 打开文件夹… 选择本地 TeX 工程;若要在对话里引用文件,点击连接胶囊把目录挂到左侧工作区。
  3. 编辑 .tex,顶栏或 F5 编译;右栏查看日志或 PDF;需要时在编辑器右键把选中片段送入会话输入框。
  4. 在同一会话中让 Agent 调用 latex_compile / latex_outline 等工具处理同一工程(工具走宿主 API,与面板共用 TeX 环境)。

本机需已安装可工作的 TeX Live 或 MiKTeX;PDF 预览优先 pdftoppm,缺失时回退内置阅读器。

适用场景与注意

适合在 DSH 内完成「对话 + 本地 LaTeX 工程」一体化:写稿、编译、看 PDF、把报错或片段送回模型,而不必反复切换外部 IDE。

注意:

  • 右栏与会话绑定;多会话时每个会话各自一份右栏状态逻辑。
  • 插件非 DeepSeek 官方发行;社区目录 SkillHub 插件页 为独立收录,与官方应用商店无从属关系。
  • 星标与版本以仓库为准;升级时用新的 install_bundle 地址或 Git 源即可。

结尾

dsh-molingTex 把墨灵 TeX 的编辑编译预览搬进 DSH 右侧栏,并用 5 个 LaTeX Agent 工具补足自动化链路。进一步了解可查阅 GitHub README 与 SkillHub 目录页。

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

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

Xiaoye