dsh-image-drag:DSH 右側邊欄圖片與 PDF 預覽的 Ctrl 拖動平移

前言

在 DeepSeek Harness(DSH)裏查看對話附件時,圖片、PDF 或 Office 轉 PDF 的預覽往往要先放大,再通過滾動條在畫面裏找細節。原生側欄支持縮放,但放大後出現滾動條時,用鼠標拖動畫布並不順手;雙欄並排時,若只想清空某一欄,也可能要逐個關標籤或觸發「最後一欄關閉就整列收起」的行爲。社區插件 dsh-image-drag(倉庫 YuyuYuu-wyt/dsh-image-drag)只做兩件事:在預覽上增加 Ctrl + 左鍵拖動平移,以及在每個停靠分欄的標籤欄注入本欄關閉按鈕,不接管 DSH 原生 UI。

這是什麼

dsh-image-drag 是純瀏覽器側的 DSH 客戶端插件,維護者爲 YuyuYuu-wyt,在「插件 → 已安裝插件」中顯示爲 圖片拖動(npm 包名 dsh-image-drag,當前版本 0.1.0,MIT 許可證)。Host 側 lib/index.js 爲空,邏輯集中在 lib/client.js,通過 bundle 注入;無網絡請求、無額外權限、無持久化狀態。要求 DSH >= 0.2.0-rc.2(README 註明在 0.2.1-rc.2 驗證),並具備 dsh CLI。

核心功能

Ctrl + 左鍵拖動平移預覽

在右側邊欄打開圖片、PDF,或 Word/PPT 等轉爲 PDF 的預覽後,用 Ctrl + 滾輪 或縮放控件放大到出現滾動條,按住 Ctrl 再按住鼠標左鍵拖動即可平移畫面。

  1. 平移直接改預覽滾動容器的 scrollLeft / scrollTop,與「適應寬度」、25%–400% 固定縮放、Ctrl + 滾輪縮放 兼容;不替換圖片 Blob URL,也不影響 PDF 矢量與文本層。
  2. 按住 Ctrl 懸停時光標爲「抓手」,拖動中爲「抓取」。
  3. 僅左鍵拖動仍爲原生行爲(PDF 選字不受影響);一次拖動結束後會吞掉落在預覽上的那次 click,減少誤觸 PDF 鏈接,其它區域點擊不受影響。

每個分欄的小關閉按鈕

右側邊欄每個停靠分欄的標籤欄會多一個關閉按鈕:

  • 單欄:提示「關閉全部」——清空本欄內容,留在「開始」頁,側欄保持展開。
  • 雙欄:左右各一,提示「關閉本欄」——只清空該欄,另一欄與雙欄佈局不變。
  • 若該欄原本沒有「開始」頁,關閉時會自動補上;兩欄都清空後左右均爲「開始」,再點無操作。
  • 圖標尺寸與風格沿用原生按鈕,懸停約 0.4 秒顯示提示。

README 中的已知邊界:HTML 預覽在沙箱 iframe 內,不在拖動範圍;文本 / 代碼 / Markdown 預覽保持原樣。觸屏與觸控板雙指滾動仍走系統手勢,本插件只處理 Ctrl + 左鍵 的鼠標手勢。側欄完全收起、只剩浮動窗口時,需先展開側欄才能看到頂部關閉按鈕;浮動窗口內仍用原生每個 tab 的關閉。

安裝與啓用

安裝前請自行查看倉庫源碼與 MIT 許可證;插件在 DSH 桌面 profile 的 Web 客戶端進程中運行,權限與當前 DSH 進程一致。

方式 A:從 npm 安裝

dsh plugin --profile desktop add dsh-image-drag

方式 B:從 GitHub 安裝

dsh plugin --profile desktop add "github:YuyuYuu-wyt/dsh-image-drag"

方式 C:克隆後本地 link(README 原文;需自行 clone 後執行)

dsh plugin --profile desktop add "link:$PWD"

或使用倉庫內腳本(在克隆後的目錄):

powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1 -Profile desktop

安裝後刷新 DSH 頁面(Ctrl+R);若插件未出現,完全退出 DeepSeek Harness 再打開。

卸載:

dsh plugin --profile desktop remove dsh-image-drag

典型用法

  1. 在 DSH 右側邊欄打開一張圖片或 PDF 預覽,放大至出現滾動條。
  2. 按住 Ctrl,鼠標左鍵在預覽區域拖動,觀察畫面平移;鬆開後再試 PDF 選字,確認未按 Ctrl 時仍爲原生行爲。
  3. 開啓雙欄佈局,分別在左右欄打開不同預覽;點擊某一欄標籤欄上的小關閉按鈕,確認僅該欄回到「開始」,另一欄內容保留。

適用場景與注意

適合經常在 DSH 側欄裏放大查看圖片、PDF 或 Office 轉 PDF 預覽、並希望用 Ctrl + 拖動 平移,或在雙欄下按欄清空而不收起整列側欄的用戶。不適合依賴 HTML 預覽內平移、或主要用觸屏拖動畫布的場景(見上文邊界)。

DSH 生態強調「一切皆插件」;社區目錄頁 skillhub.cn/plugins/YuyuYuu-wyt/dsh-image-drag 爲獨立站點收錄,與 DeepSeek / 幻方無官方從屬關係。README 提到獨立驗收 15/15 項 PASS(含無插件 baseline 對照),可作爲行爲預期的參考,非使用本插件的前置條件。

結尾

dsh-image-drag 用最小改動補全側欄預覽的平移與分欄關閉體驗,與原生縮放、PDF 選字並存。進一步瞭解可訪問目錄頁與 GitHub 倉庫:

  • 目錄頁:https://www.skillhub.cn/plugins/YuyuYuu-wyt/dsh-image-drag
  • GitHub:https://github.com/YuyuYuu-wyt/dsh-image-drag
羽毛球分组比赛记分
小程序二维码

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

小夜