前言¶
DeepSeek Harness (DSH) 的设计理念是“一切皆插件”。默认情况下,DSH 仅提供一个 ui-theme.fontSize 设置,且只影响对话正文。侧栏标签、菜单和设置页的尺寸是固定的像素值,应用本身也没有页面缩放功能(菜单中无 View/Zoom 选项,代码未暴露 setZoomLevel)。在默认状态下,Cmd + = 键无任何响应。dsh-zoom 插件为 DSH Web 客户端添加了全局界面缩放能力,通过 CSS zoom 属性和键盘快捷键解决这一问题。
核心功能¶
该插件提供以下能力:
- 全局界面缩放:缩放范围覆盖侧栏、菜单、设置页、浮层(如确认弹窗、Toast)以及对话区域。
- 键盘快捷键控制:支持
Cmd/Ctrl组合键进行缩放。 - 缩放档位持久化:缩放级别存储在
localStorage中,重启应用后恢复。 - 脚本调试 API:暴露
__dshZoom.get、__dshZoom.set、__dshZoom.step、__dshZoom.reset接口,供外部脚本调用。 - 视口单位补丁:针对 CSS
zoom不缩放视口单位(如100vh、100dvh)的特性,注入补丁规则以修复浮层高度问题。
安装与启用¶
插件由社区开发者 DC-507 维护,采用 MIT 许可证。
命令行安装(推荐):
dsh plugin --profile desktop add github:DC-507/dsh-zoom
应用内安装:
1. 打开 DSH 客户端侧栏。
2. 进入 插件 菜单。
3. 点击 Add plugin。
4. 输入 github:DC-507/dsh-zoom。
5. 安装完成后点击 Enable now。
安装后通常需要重启 DSH 进程才能完全激活。
典型用法¶
插件提供两种控制方式:快捷键和脚本 API。
键盘快捷键¶
| 快捷键 | 动作 |
|---|---|
Cmd/Ctrl + =(或 Cmd/Ctrl + Shift + =) |
放大一档 |
Cmd/Ctrl + - |
缩小一档 |
Cmd/Ctrl + 0 |
回到 100% |
支持的缩放档位包括:80% → 90% → 100% → 110% → 125% → 150% → 175% → 200%。
脚本调用¶
在浏览器控制台或自定义脚本中,可以直接调用全局对象 __dshZoom:
// 获取当前缩放级别
const current = __dshZoom.get();
// 设置为 125%
__dshZoom.set(1.25);
// 手动调整一档(支持正负数)
__dshZoom.step(1); // 放大
__dshZoom.step(-1); // 缩小
// 重置为 100%
__dshZoom.reset();
已知限制¶
使用该插件时请注意以下情况:
- 非官方插件:插件由社区维护,与 DeepSeek 无官方隶属关系。
- 画布模糊:基于 Canvas 渲染的面板(如终端 xterm、Monaco 编辑器、PDF/表格预览)在高倍率下会保持原始分辨率,导致显示略糊。每次调整缩放会触发
resize事件以重新测量。 - 快捷键冲突:快捷键在
<webview>或<iframe>内部不生效。需先点击主窗口使其获得焦点。 - macOS 红绿灯:窗口左上角的 macOS 红绿灯按钮(红/黄/绿)不参与缩放。在 125% 及以上缩放级别时,请留意顶栏的拖拽区域。
- 浏览器缩放冲突:如果在普通浏览器而非 DSH 桌面壳中运行,插件会拦截浏览器默认的页面缩放快捷键。