DeepSeek Harness 在桌面端(Electron/Tauri)环境中,输入框通常缺少原生的右键菜单。开发者或用户习惯使用快捷键操作,但在处理长文本时,缺少“全选”或“粘贴”的图形化入口会降低操作效率。
下面介绍 wuwaka/dsh-clipboard-menu。这个插件通过在渲染进程中注入右键菜单监听器,为 DSH 的输入框补全了剪切、复制、粘贴和全选功能,并为选中文字提供了复制和搜索选项。
功能概览¶
该插件主要解决两类场景的交互问题:
- 输入框操作:在 DSH 的输入区域右键,提供标准的文本编辑操作。
- 选中文本操作:在文档、代码块或 AI 回复等只读区域选中文字后右键,提供复制及搜索功能。
核心能力¶
- 输入框菜单:支持剪切、复制、粘贴、全选。
- 选中文字菜单:支持复制、复制为纯文本、搜索。
- 搜索引擎管理:
- 支持选择与自定义搜索引擎。
- 支持持久化存储(记住用户的选择)。
- 支持基于界面语言的默认引擎检测(中文默认百度,其他默认 Google)。
- 引擎配置:支持添加自定义供应商,可自定义名称和 URL 模板。
- 兼容性:支持 Lexical 富文本编辑器,支持自定义引擎表单内的右键操作。
安装与启用¶
安装该插件需要管理员权限或目标 Profile 的写入权限。
执行以下命令进行安装:
dsh plugin --profile <profile> add github:wuwaka/dsh-clipboard-menu
安装完成后,需要重启宿主程序(DSH Desktop 或承载它的桌面端)以使监听器生效。
典型用法¶
1. 使用搜索引擎¶
在输入框上右键,点击「搜索引擎」即可使用默认浏览器搜索选中的文字。若右键点击「搜索引擎…」,鼠标悬浮展开列表,选择其中一个即可切换默认引擎。该选择会被持久保存。
2. 配置自定义引擎¶
在搜索引擎列表中点击「自定义」,展开配置表单。在表单的两个输入框内(名称、网址),依然可以使用右键菜单进行剪切、复制、粘贴和全选操作,且右键菜单会作为独立浮层出现,不会关闭表单。
在表单中保存后,新的供应商会以你设置的名称出现在列表中,支持独立删除。
3. 强制在浏览器中启用¶
插件默认不监听普通浏览器的右键事件,以免覆盖浏览器原生的强大功能。如果需要在浏览器中测试或使用,可以在插件加载前通过 JavaScript 设置全局变量:
window.__DSH_CLIPBOARD_MENU_FORCE__ = true
适用场景与注意¶
生效范围¶
该插件仅在没有自带右键菜单的外壳中生效,主要针对 DSH Desktop 的 Electron 或 Tauri 环境。普通浏览器标签页本身有原生菜单,插件默认不安装监听器,右键行为保持原样。
剪贴板权限¶
如果 navigator.clipboard.readText() 被浏览器拒绝(通常是因为没有 HTTPS 或权限被撤销),菜单会提示“剪贴板不可用”,并建议使用 Ctrl+V。
已知限制¶
- 不支持“粘贴并匹配样式”。
- 菜单滚动不会关闭(但外部点击会关闭)。
结语¶
wuwaka/dsh-clipboard-menu 通过在渲染进程层面拦截右键事件,填补了 DeepSeek Harness 桌面端输入框在 GUI 交互上的空白。对于习惯使用右键菜单进行文本处理的用户,尤其是需要频繁进行全选、粘贴或切换搜索引擎的场景,该插件提供了必要的辅助。