DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

SHW-bit /

SHW-bit/dsh-font-adjust

Verified

DSH 字体调整插件:字号、字体、字重、行高、文字颜色,实时预览、保存、恢复默认。

★ 1 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@eccf730e

dsh-font-adjust

license

给 DSH(DeepSeek Harness) Web 界面加一行「字体调整」:字号、字体、字重、行高、文字颜色,拖动即生效,保存后下次打开还在,一键恢复默认。

官方设置里已经有字号和字体,但没有字重、行高、颜色,也没有把这几项放在一起的实时预览。这个插件补的就是这几项。

这是一个 DSH client 插件(dsh.client + cordis.patch.yml bundle),零依赖,不改动 DSH 本体。


装

node install.mjs --check   # 先看会改什么,不写盘
node install.mjs           # 装

脚本做三件事:把文件真拷贝进 profile/node_modules/dsh-font-adjust(不用 pnpm —— 本地路径会被建成 junction,桌面端插件列表读不到)、往 profile 的 dependencies 记一行来源、往 dsh.profile.bundles 末尾加 dsh-font-adjust。改 package.json 前自动备份成 package.json.bak-<时间戳>,重复跑幂等。

改完重启 DSH。插件管理里能看到「字体调整」,可以开关。

卸载:node install.mjs --uninstall。


用

打开 设置 → 通用,滚到底部的「字体调整」:

控件 范围 作用
字号 12–22 px 会话正文基准。标题、表格、行高按官方那条阶梯一起缩放
字体 任意本机字体名,逗号分隔 直接填 Microsoft YaHei, sans-serif;留空用系统默认栈
字重 300 / 400 / 500 / 600 / 700 作用于正文,标题和加粗保持自己的层级
行高 1.2–2.2 倍 按当前字号换算成像素
文字颜色 取色器或 #rrggbb 留空跟随主题(浅色/深色自动适配)
  • 实时预览:面板底部那块文字跟着变;同时会话正文当场就变,不用保存。
  • 保存设置:写进浏览器 localStorage(键 dsh-font-adjust:v1),下次打开自动套用。不点保存,这次刷新就恢复原样。
  • 恢复默认:清掉保存值,所有项回到 14px / 系统字体 / 400 / 1.71 / 跟随主题。

为什么这么写

  • 字号走官方变量:官方把整条排版阶梯都挂在 --dsh-content-font-size 上(--dsw-font-markdown-h1 之类都是 calc(21px + var(--dsh-content-font-delta)))。改这一个变量,标题/表格/行高自己跟着走,不用逐个 class 追。插件在 body 上写这个变量,比官方那条 body.style 内联样式优先级更高。
  • 字体走 --dsh-font-family-text:官方 base.css 里 --dsw-font-family 就引用它。注入时按 CSS 规则清洗字体名(去引号尖括号、通用字族不加引号),避免拼出坏值。
  • 行高走 --dsw-font-markdown-base 一族:官方的正文行高是 calc(24px + delta),跟字号绑死。要独立控制行高,只能覆盖这几个 shorthand 变量。
  • 作用域是 [data-slot="conversation.chat.flow"]:只动会话正文,侧栏、工具栏、输入框不动,布局不会被拉坏。
  • 零依赖:不 import 任何 @deepseek-ai/* 的值。store 服务在静态模块表里就用它(面板自动重渲染),拿不到就退回组件内 useState,两条路都不炸。

已知边界

  • 只覆盖会话正文。侧栏、设置面板、输入框不跟着变——这是有意的,避免把界面骨架撑坏。要全界面生效,把 SCOPE 改成 'body'。
  • 颜色不随主题切换。选了深色文字再切到暗色主题,字会看不清;面板里有「跟随主题」按钮一键清掉。官方字号设置页同理不管颜色。
  • 不枚举本机字体。浏览器不给已安装字体列表,输入框只给常见字体建议(datalist),实际能填任意字体名,缺字体会回退。
  • 保存是本机浏览器级的。localStorage 跟着浏览器走,换浏览器/清缓存就没了;不是 profile 级配置。

文件

文件 作用
package.json 声明 bundle patch 与 dsh.client
cordis.patch.yml 往 profile 插一行插件
index.js Host 半,空实现(逻辑全在浏览器)
client.js 全部功能:样式注入 + 设置面板
locale/zh.json、locale/en.json 插件管理里显示的名称与说明
icon.svg 插件图标
install.mjs 装进 / 卸出 profile
LICENSE MIT
—/ 5

No ratings yet

Verified DSH bundle

Commit eccf730ef1dc

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout