dsh-local-font-picker:在 DSH Web UI 里选用本机已安装的界面与代码字体

前言

DeepSeek Harness(DSH)的 Web 界面支持主题与外观调整,但要在设置里精确指定「本机已安装」的 UI 字体和代码字体,往往仍要手敲字体族名称,或依赖浏览器默认栈。社区插件 dsh-local-font-picker 面向 DSH Web UI:在支持 Local Font Access 的浏览器里列出本机字体供选择,并把结果写入 DSH 核心的内置字体设置,与官方 Settings → General → Fonts 行保持一致。下面介绍它的定位、能力与安装用法。

这是什么

dsh-local-font-picker 是由社区维护者 Wepoi9 发布的 DSH 社区插件(非 DSH 核心发行版的一部分)。一句话定位:在 DeepSeek Harness Web UI 中,选择本机已安装的 UI 字体与代码字体。

插件宿主入口 index.js 刻意设计为空操作;全部逻辑在 Web 客户端运行。它不修改 DSH 源码树,也不需要单独的插件构建步骤。

核心功能

以下能力均来自项目 README 与 package.json 说明。

  1. 枚举本机字体:通过浏览器 Local Font Access API(window.queryLocalFonts())列出已安装字体;API 不可用时回退为手动输入字体名称。
  2. 写入核心主题 API:通过 DSH Theme API(ctx.theme.setFontFamily(role, value))应用 UI 与 code 两种角色的字体;持久化、CSS 应用与重载恢复由 DSH 核心设置负责。
  3. 无独立存储:插件自身不使用 localStorage,也不覆盖 Theme token;与内置字体设置行读写同一份核心状态。自 0.3.0 起完全委托核心;更早版本曾自行保存在 localStorage 并覆盖 Theme token,升级至 0.3.0 不会自动迁移旧数据,需在新设置行里重新选一次字体。
  4. 界面文案:按钮与状态标签随浏览器首选语言显示英文或日文(例如 Load PC fonts / PCフォントを読み込む),与 DSH Language 设置无关;语言偏好在行模块加载时确定,改浏览器语言需刷新页面后生效。

兼容性要点(摘自 README 表格与说明):

  • engines.dsh:>=0.2.1-alpha.2 <1.0.0(核心 font-family 设置自 DSH 0.2.1-alpha.2 引入)。
  • 文档记录的最新运行时验证 DSH 版本:0.2.1-rc.2(2026-10-17 在 live Web UI 上复验 0.3.0 核心委托行为)。
  • Local Font Access 主要在 Chromium 系桌面浏览器可用;其他浏览器仍可用手动输入字体名。

隐私:使用 Load PC fonts 会触发浏览器权限提示;插件不读取或复制字体文件、不上传字体数据、不发网络请求。

安装与启用

安装命令须使用本地仓库的绝对路径(README 原文,勿与 github:owner/repo 形式混用):

dsh plugin --profile web add <absolute-path-to-this-repository>

安装后重启 DSH Web。

当前 package 版本为 0.3.0,许可证 MIT。插件以当前 DSH 进程权限运行;安装前请自行查看仓库源码与 LICENSE。

典型用法

  1. 打开 Settings → General → Fonts。
  2. 点击 Load PC fonts(或日文 PCフォントを読み込む),在浏览器提示中允许访问本地字体列表。
  3. 在 UI 字体与代码字体行中选择或输入已安装的字体族名称;值写入 DSH 内置字体设置,与内置字体行保持同步。
  4. 需要恢复默认时,使用 Reset to default,将两种角色交回内置字体列表。

维护者建议在报告兼容性问题时附上 DSH 版本、浏览器、操作系统、复现步骤与期望/实际行为。仓库内可用:

npm run check

对 index.js 与 client.js 做语法检查。

适用场景与注意

适合谁:长期在 DSH Web 上工作、希望界面与代码块使用本机已有字体(如日文 UI 用 Meiryo UI、代码用 Consolas)且不想与核心设置两套状态打架的开发者。

注意:

  • DSH 仍在快速演进,预发布版本间客户端扩展契约可能变化;README 未验证的版本不应默认兼容。
  • 字体设置存在于 DSH 核心设置中,与内置字体行共享;本插件不增加单独存储。
  • 社区插件目录(如 SkillHub)为独立生态站点,与 DeepSeek / 幻方无官方从属关系;安装来源以 GitHub 仓库为准。

结尾

dsh-local-font-picker 把「本机字体清单 + 选择」接到 DSH 核心 font-family 设置上,适合作为 Web profile 下的趣味换装类补充。目录页:SkillHub - dsh-local-font-picker;源码与完整兼容表:GitHub - Wepoi9/dsh-local-font-picker。

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

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

Xiaoye