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 倉庫。