fuzz1og/dsh-font-settings0

dsh-font-settings

DSH Web UI 插件,在设置中提供用户自定义 UI 字体与代码等宽字体的偏好设置,支持系统字体枚举。

AI 分析

核心用途是提供个性化的界面视觉定制。适合对界面排版、代码阅读字体有特定审美或舒适度要求的用户。

包名
dsh-font-settings
版本
0.1.0
许可证
MIT
最近更新
2026年8月15日

安装

此插件尚未提供可验证的 bundle,或兼容性检查未通过。请先阅读仓库说明。 阅读完整 README ↗

dsh-font-settings

DeepSeek Harness Web UI 插件:字体偏好设置——在「设置 → 通用」中提供 UI 字体与代码/等宽字体选择(系统字体枚举 + 自定义 CSS font-family),通过主题覆盖层实时生效。

安装

dsh plugin --profile web add github:fuzz1og/dsh-font-settings

然后在 cordis.patch.yml(profile patch 层)插入:

- insert:
    - id: font-settings
      name: 'dsh-font-settings'

重启 DSH 后生效。

工作原理

环节说明
宿主半区拥有 ui-font 设置命名空间(持久化进 $DSH_HOME/settings.yaml),提供三条同源路由:GET/POST /font-settings 读写设置、GET /font-settings/fonts 枚举已安装系统字体
系统字体枚举浏览器无法列出已安装字体,且注册表显示名与 CSS 家族名常不一致——宿主扫描机器 + 用户字体目录,解析每个字体文件的 sfnt name 表(nameID 1, UTF-16BE)取真实家族名;TTC 集合读取第一个 face;非 Windows 平台返回空列表,客户端回退到自定义输入
客户端半区通过主题服务的 overrideTokens() 叠加两个根 CSS 变量(--dsw-font-family / --ds-font-family-code),所有 --dsw-font-* 排版 token 都引用它们
依赖webServer + @deepseek-ai/dsh-settings + @deepseek-ai/schemastery

License

MIT