dsh-typography: DeepSeek Harness 排版自定義插件

DeepSeek Harness(DSH)的 Web UI 依賴兩個 CSS 變量來控制字體:--dsw-font-family(界面)與 --ds-font-family-code(代碼)。在早期,要修改這些變量通常需要手動修改樣式文件或使用複雜的 CSS patch 方式。dsh-typography 插件通過雙面插件機制,將這兩個變量封裝成了兩組獨立的選擇器,讓界面字體與代碼字體的管理變得直觀。

插件信息

  • 名稱:gan332/dsh-typography
  • 維護者:Gan332
  • 許可證:MIT
  • 類別:趣味換裝
  • 簡介:DeepSeek Harness 的排版自定義插件,支持界面字體與代碼字體獨立切換,提供在線預設與本地字體庫支持。

核心功能

  1. 界面與代碼字體獨立管理:將原本混用的 CSS 變量拆分爲兩組,每組擁有獨立的預設卡片、導入編輯器與持久化狀態,互不干擾。
  2. 在線預設:內置 Inter、JetBrains Mono、Noto Sans SC 等在線字體。字體文件通過 jsDelivr CDN 分發,若離線則自動回退到系統字體棧。
  3. 本地字體庫免轉換:支持 woff2/ttf/otf 格式。將字體文件直接放入 %DSH_HOME%\typography\ 目錄,無需轉碼即可在界面中點擊應用。
  4. 可變字體友好:支持“可變·全字重”選項,可生成 font-weight: 100 900 的 @font-face 規則,真實呈現字體粗細。
  5. 默認選項與兼容性:選擇“默認”時不輸出任何樣式,方便與其他字體類插件共存。內置遷移邏輯,兼容不同版本的 DSH defineStore 入口。

安裝與啓用

DeepSeek Harness 的不同入口(桌面端與 Web 端)使用獨立的 profile。安裝時請根據實際使用的入口選擇對應的命令。

桌面端安裝:

dsh plugin --profile desktop add github:Gan332/dsh-typography

Web 端安裝:

dsh plugin --profile web add -w /path/to/dsh-typography

安裝完成後,需重啓對應入口。桌面端安裝會記錄恢復事務,重啓後自動驗證並清理。安裝完成後,插件會出現在 設置 → 通用 → 字體(界面 / 代碼) 中。

使用方法

切換字體

在“界面字體”或“代碼字體”分組下,直接點擊預設卡片即可實時應用。選擇“默認”可恢復系統字體棧。

導入自定義字體

在對應組的編輯區填寫三項信息後點擊“添加”:

字段 說明
字體名 任意名稱,用於在字體棧中引用(如 MiSans)
字體鏈接 支持 woff2 / ttf / otf 格式的外部鏈接
字重 400 常規 · 500 中等 · 600 半粗 · 700 粗體 · 可變·全字重。靜態字體選擇與文件實際粗細一致的字重;可變字體選“可變·全字重”以獲得全部真實粗細

同一字體名 + 同一字重複添加會覆蓋舊條目。

字體鏈接寫法建議: 優先使用同源相對路徑,避免因端口變化導致的鏈接失效。

本地字體庫

將字體文件(woff2/ttf/otf)複製到 %DSH_HOME%\typography\ 目錄下。

copy C:\Users\fish\Downloads\MiSansVF.ttf $env:USERPROFILE\.dsh\typography\

刷新頁面後,在對應組的“本地字體庫”列表中點擊字體文件名即可應用。

注意事項

  1. 在線依賴:使用在線預設需要聯網,離線時僅能使用系統字體棧。
  2. 本地文件命名:本地庫文件名需以字母或數字開頭(Unicode 字母即可,中文文件名可用)。
  3. 硬編碼限制:部分組件(如工作區瀏覽器)硬編碼了 Inter 優先棧,即便使用了本插件,這些位置仍可能顯示 Inter。
  4. 插件衝突:若同時安裝了 dsh-fonts,任一組選中預設或自定義字體時,本插件樣式表會覆蓋 dsh-fonts 的結果。

結語

dsh-typography 通過插件化方式解決了 DSH 字體配置割裂的問題。它提供了從在線預設到本地庫的完整閉環,且對可變字體支持良好,適合希望在保持系統原生的同時,針對代碼或界面進行精細化排版調整的開發者。

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

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

小夜