dsh-plugin-type-to-compose: Input Anywhere and Automatically Focus the Input Field

DSH 的典型工作流中,点开历史消息、在侧边栏切换会话,或者用鼠标选完文字后,还需要把光标移回底部的输入框。这个多出来的点击动作增加了打断感。

dsh-plugin-type-to-compose 解决了这个问题。这是一个客户端插件,监听全局按键,将焦点自动转移至当前对话的输入框。

插件信息

  • 插件名:dsh-plugin-type-to-compose
  • 核心价值:在 DSH 窗口里任意位置直接打字或粘贴,内容会落进当前对话的输入框 —— 不用先点一下输入框。
  • 维护者:daoyu1993-lab
  • 类别:客户端
  • 许可证:MIT

核心功能

  • 全局监听:监听 document 级的 keydown 和 paste 事件。
  • 自动聚焦:检测到文本输入意图后,自动将焦点从任意位置转移至当前对话的输入框。
  • 输入与粘贴:支持文本输入(a, 1, /, 中 等)和粘贴(支持 ⌘V / Ctrl+V / Shift+Insert)。
  • 富媒体支持:支持粘贴图片和文件,复用官方粘贴逻辑。
  • 多面板适配:支持多会话面板场景,自动选择可写且已排版的面板。
  • 按键过滤:空格键默认让路(可配置),避免翻页冲突;不干扰终端、搜索框、弹窗、已禁用输入框等控件。

安装与启用

在终端中执行以下命令:

# 本地目录(本仓库 clone 下来之后)
dsh plugin --profile desktop add "link:$PWD"

# 或直接从 GitHub
dsh plugin --profile desktop add "github:daoyu1993-lab/dsh-plugin-type-to-compose"

装完后刷新页面(⌘R)即可生效。

卸载

dsh plugin --profile desktop remove dsh-plugin-type-to-compose

插件本身不修改任何官方文件,卸载后界面立即恢复原样。

典型用法

安装后,在 DSH 窗口的任意位置操作:

  • 场景一:点开一条历史消息、在侧边栏点了个会话,或者用鼠标选完文字之后,直接敲键盘 / 按 ⌘V 就能继续写;不用把鼠标移回底部输入框再点一下。
  • 场景二:在 DSH 窗口里任意位置直接打字或粘贴,内容会落进当前对话的输入框。

注意事项

  • 依赖锚点:依赖官方 [data-composer-input] 锚点,若上游改名插件会静默失效。
  • 平台限制:仅在浏览器/Web 表面生效。
  • 空格键处理:空格键默认让路,避免翻页变成新消息。
  • 零依赖:零依赖、零构建。
  • 非侵入式:不修改官方文件,卸载后界面立即恢复原样。

该插件旨在减少交互打断,适合习惯键盘操作的 DSH 用户。更多细节与源码可参考 GitHub 仓库。

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

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

Xiaoye