前言¶
DeepSeek Harness(DSH)的官方設置僅包含字號與配色,缺乏字體族入口。現有的第三方字體插件通常統一修改 --dsw-font-family,導致界面與正文字體不可分割。dsh-font-master 旨在將字體控制拆分爲三個維度:文種(中/西)、用途(界面/內容/代碼),滿足不同場景下的排版需求。
核心功能¶
插件具備以下能力:
- 中西文分別指定:拉丁字母走西文字體,漢字走中文字體,互不干擾。
- 界面 / 內容 / 代碼三處獨立:側欄外殼、會話正文、代碼塊分別設置字體。
- 讀取本地字體文件:生成菜單列出發機器上安裝的字體,支持中英文名搜索。
- 跟隨界面字體:內容字體可直接沿用界面字體設置。
- 基於 Token 覆蓋:不依賴語言檢測,也不做 DOM 手術;中文字體留空也不會導致漢字丟失。
安裝與啓用¶
使用官方 CLI 安裝插件:
dsh plugin --profile desktop add github:AnAcretiondisk9986/dsh-font-master
安裝完成後需要重啓 DSH 才能生效。
典型用法¶
- 打開設置菜單,進入「字體 / Fonts」。
- 共有 6 個槽位,分爲 3 處用途(界面、內容、代碼)× 2 個文種(西文、中文)。
- 按中文、等寬、西文分組,支持中英文名搜索。
- 點擊「跟隨界面字體」開關,可以讓內容字體直接沿用界面字體設置。
技術實現¶
插件通過覆蓋 DSH 的 CSS 變量實現控制,不涉及 DOM 操作:
- 界面字體:覆蓋
--dsw-font-family。 - 內容字體:覆蓋
--dsw-font-markdown-*系列變量。 - 代碼字體:覆蓋
--ds-font-family-code。 - 用戶消息:通過匹配
class*="plainRun"選擇器實現覆蓋。
宿主側會掃描系統字體目錄(如 Windows 的 %WINDIR%\Fonts),讀取 sfnt 結構中的字體族名,生成清單供瀏覽器側調用。
注意事項¶
- 安裝後必須重啓 DSH 才能生效。
- 如果無法讀取本機字體清單(如路由被拒),插件會退回內置候選表,菜單依然可用。
- 插件不依賴語言檢測,中文字體留空也不會導致漢字丟失。
結語¶
本插件通過獨立的變量覆蓋和本地字體掃描,解決了 DSH 環境下字體配置粒度過粗的問題。