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 目錄頁。

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

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

小夜