dsh-ui-font:DeepSeek Harness Web GUI 插件

前言

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。页面会增加两行设置,分别对应正文和代码字体:

  1. Body font:应用于正文文本和 UI 硅胶。
  2. 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-layout presenter 注入的内联样式,以确保优先级。
羽毛球分组比赛记分
小程序二维码

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

小夜