前言¶
DeepSeek Harness 的 Web GUI 目前允許在設置中更改顏色方案和字體大小,但不允許更改字體族。核心的 dsh-client-ui-theme 包在 base.css 中使用硬編碼的字體棧(--dsw-font-family 和 --dsw-font-mono)。dsh-ui-font 插件解決了這個問題,通過在設置頁面添加兩個可編輯行來覆蓋這些令牌,無需觸碰 DSH 的安裝文件。
安裝與啓用¶
使用 DSH 插件管理器安裝該包,安裝後必須重啓 dsh web 進程才能生效。
dsh plugin --profile web add dsh-ui-font
dsh web
瀏覽器刷新無法加載新插件,必須重啓服務。
配置¶
安裝完成後,打開 Settings → General。頁面會增加兩行設置,分別對應正文和代碼字體:
- Body font:應用於正文文本和 UI 硅膠。
- Code font:應用於代碼塊和等寬文本。
點擊每行的 Add font(添加字體)按鈕,瀏覽器會詢問字體訪問權限。授權後,插件會讀取本地已安裝的字體列表。選擇字體後,該字體會以芯片的形式顯示在行中,可以多次添加以構建字體棧。芯片支持重新排序(調整後備優先級)和移除。
存儲與默認值¶
選擇的字體棧會被存儲在插件自身的配置條目中,並以純 CSS font-family 列表的形式保存。默認配置如下:
| 設置 | 默認值 |
|---|---|
sans |
"JetBrains Mono", "BIZ UDPGothic", "Noto Sans JP", "Yu Gothic UI", Meiryo, sans-serif |
mono |
"JetBrains Mono", "SF Mono", "Fira Code", Consolas, "Liberation Mono", monospace |
注意:JetBrains Mono 不包含 CJK 字形,因此默認的 sans 配置在首選字體無法渲染日文時,會回退到 BIZ UDPGothic 和 Noto Sans JP。如果需要支持 CJK,請確保在字體棧的後備順序中包含至少一個支持中文的字體族。
手動編輯¶
存儲的值是純 CSS 字體棧,也可以通過直接編輯配置文件來覆蓋:
# $DSH_HOME/profiles/<profile>/cordis.patch.yml
- id: ui-font
name: dsh-ui-font
config:
sans: '"JetBrains Mono", "BIZ UDPGothic", "Noto Sans JP", sans-serif'
注意事項¶
- 權限與重啓:瀏覽器首次使用時需要授予字體訪問權限。安裝插件後必須重啓
dsh web,僅刷新瀏覽器頁面無效。 - 安全性:存儲的值會被清理,移除大括號、分號和尖括號等可能導致注入的字符。
- 覆蓋機制:插件使用
!important規則覆蓋ui-layoutpresenter 注入的內聯樣式,以確保優先級。