dsh-plugin-scaling:DSH Web 三栏独立缩放

前言

DeepSeek Harness(DSH)的 Web 界面通常是左栏、中间主窗口、右栏三栏布局。浏览器自带的整页缩放会三栏一起变大变小;侧栏想看清终端、中间想放大代码、右栏又想保持紧凑时,往往只能反复调「设置 → 通用 → 内容字号」,或接受某一栏被连带缩放。下面介绍社区插件 @beyondandsharp/dsh-plugin-scaling:在 Web 壳里给每一栏单独设 1%–500% 的整体缩放,互不牵连。

这是什么

维护者 BeyondandSharp,分类为客户端(platform: web),npm 包名 @beyondandsharp/dsh-plugin-scaling,当前版本 0.2.4,MIT 许可。插件是纯前端实现:不改宿主、不依赖特定皮肤,缩放比例存在插件自己的 localStorage 里;停用后在「设置 → 插件」里关闭即可完全恢复浏览器原生缩放,不留属性、样式、监听器或提示条。

核心功能

按栏独立缩放。 左栏、中栏、右栏各自维护 1%–500% 的倍数。右栏若拆成两列,两列各算一栏、各自独立缩放。

快捷键与反馈。 每次变化时,右下角会短暂显示「栏名 + 百分比」。步长按当前值的比例变化(不小于 1%):100% 时一格约 5%;20% 以下一格 1%;接近 500% 时一格约 25%,便于在两端快速调节。

Diff 预览单独缩放。 悬停会话里「已修改文件」行会弹出 diff 预览。指针停在预览上时,Ctrl / ⌘ + 滚轮只缩放卡片内的 diff 内容,卡片边框与位置保持宿主样式,三栏取值不受影响。预览是临时的:移开或关闭后缩放清零,下次悬停从 100% 开始;预览卡片不可聚焦,复位预览请用 Ctrl + 滚轮往回滚。

与字号设置的关系。 行为与官方默认外观及多数皮肤一致,只使用宿主设计 token;与「设置 → 通用 → 内容字号」为相乘关系。

中栏顶栏固定。 中栏顶部一行(会话标题、视图页签、打开右栏按钮)不随中栏缩放,始终按 100% 渲染;缩放只作用于其下方内容。指针停在这一行上时,Ctrl + 滚轮交给浏览器做整页缩放。

终端指针修正。 侧栏终端随栏缩放时,插件会修正指针坐标,避免 xterm.js 在 CSS 缩放下拖选偏移(Firefox / Chromium、zoom 与 transform 均已验证)。

存储与降级。 刷新或重启后从浏览器恢复;隐私模式等存储不可用时退化为内存;损坏或越界项按项忽略并夹紧到 1%–500%。

安装与启用

包内 lib/ 已入库,安装后无需再构建。装完刷新页面即可使用。

# 本地安装
dsh plugin --profile web add /root/dsh-plugin-scaling
# 从 npm 安装
dsh plugin --profile web add @beyondandsharp/dsh-plugin-scaling
# 或从 git 安装
dsh plugin --profile web add github:BeyondandSharp/dsh-plugin-scaling

插件以当前 DSH 进程权限在浏览器端运行;安装前建议自行查看 GitHub 仓库 源码与 LICENSE。

典型用法

把指针移到要调节的栏内,用下表操作(macOS 将 Ctrl 换为 ⌘):

操作 作用
Ctrl / ⌘ + 滚轮 缩放指针所在栏
Ctrl / ⌘ + + / - 缩放焦点所在栏
Ctrl / ⌘ + 0 将该栏复位到 100%

持久化示例(键名与 README 一致):

localStorage['dsh.plugin-scaling.v1'] = {"left":1,"center":1,"right":1,"right-1":1}

right 为右栏第一列,right-1 为第二列。需要固定缩放实现机制时,改完刷新:

localStorage['dsh.plugin-scaling.mechanism'] = 'zoom' // 或 'transform' / 'auto'

Gecko(Firefox)上侧栏可能因 zoom 与 border-image 装饰的兼容问题而选用 transform;中栏在 Gecko 上始终用 zoom 以保证文本选择与指针对齐。更细的机制取舍见仓库内 docs/DESIGN.md。

适用场景与注意

适合谁: 经常在 DSH Web 壳里并排看终端、会话与工具栏,且希望某一栏单独放大或缩小、而不是整页缩放的使用者。

键位差异: Web 壳里 Ctrl+± / Ctrl+0 由宿主快捷键服务处理,Ctrl+= 可能被判定为浏览器保留组合而无法注册;Electron 桌面壳上会注册为可在「设置 → 快捷键」中修改的三条命令。

生态说明: DSH 社区插件目录(如 SkillHub 条目)是独立站点,与 DeepSeek / 幻方无官方从属关系;安装命令以 README 为准,勿凭包名自行拼接。

结尾

dsh-plugin-scaling 把 DSH Web 三栏(及右栏分列、diff 预览)变成可独立缩放的区域,数值本地持久化,停用即恢复原生行为。需要细节、动图与开发说明时,可查阅 GitHub:BeyondandSharp/dsh-plugin-scaling 与目录页 SkillHub。

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

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

小夜