前言¶
在 DeepSeek Harness(DSH)裏寫提示詞、錯誤信息或技術說明時,輸入框裏的拼寫錯誤往往只有瀏覽器底層的波浪線提示,桌面殼層本身沒有系統級右鍵菜單,改詞只能手敲或全選替換。社區插件 osman3n/dsh-spell-suggestions(包名 @osman3n/dsh-composer-spellcheck)專門針對消息輸入區(Composer)補上右鍵菜單:在錯別字上彈出按編輯距離與詞頻排序的建議,並保留剪切、複製、粘貼等常規編輯項。下面介紹它的定位、行爲與安裝方式;事實以 GitHub 倉庫 README 爲準。
這是什麼¶
維護者 osman3n 將其歸類爲客戶端插件:瀏覽器側邏輯已預構建並提交爲 client.js,運行時無需再拉網構建。Host 側僅有佔位用的 index.js,供 Loader 掛載條目。
Composer 使用 Lexical 編輯器(目標節點帶 [data-composer-input])。本插件在 document 上註冊 capture 階段的 contextmenu 監聽,且只處理落在 Composer 內的事件,應用其他區域的右鍵行爲與未裝插件時一致。Chromium 自帶的拼寫下劃線不會被插件改寫;插件提供的是可操作的共享 Web 上下文菜單(ctx.contextMenus),彌補桌面殼沒有原生右鍵菜單的缺口。
核心功能¶
經過上面的定位,菜單內容與 README 描述一致,可歸納爲下面幾點。
拼寫建議¶
- 根據指針下的詞,對照內置詞典校驗。
- 最多展示 5 條建議,先按編輯距離、再按詞頻排序。
- 建議保留原詞的大小寫形式(例如
Recieve→Receive)。 - 詞典已收錄的詞仍會顯示編輯命令塊,方便對正確文本做剪切、複製等操作。
- 無法匹配時顯示 “No suggestions”,同樣附帶編輯命令。
加入詞典¶
菜單項 Add to dictionary 將詞記入 localStorage,鍵名爲 dsh.composer-spellcheck.user-words,後續視爲已知詞。
編輯命令¶
在建議(或 “No suggestions”)之後有分隔線,隨後爲 Cut、Copy、Paste、Select all、Undo、Redo,與殼層本應在默認菜單中提供的功能對齊。
詞典來源與侷限¶
- 約 3 萬 英文詞,來自 FrequencyWords(CC-BY-SA),併合並
src/allowlist.txt與src/typos.json中的 curated 糾錯對(含如dont→don't一類寫法)。 - 語料裏本就存在的非正式拼寫(
dont、cant、youre等)會從頻率表側剔除,以免與糾錯表衝突、導致從不出現建議。 - 僅覆蓋 Composer;建議基於捆綁詞典,與操作系統拼寫檢查的標紅範圍可能略有差異。菜單由應用共享 Web 菜單呈現,鍵盤導航與關閉方式遵循平臺行爲。
安裝與啓用¶
瀏覽器半部已預構建在倉庫內,安裝階段不需要 build,運行時亦不需要訪問外網拉取詞表。
圖形界面¶
- 在應用中打開插件管理器:Settings → Plugins。
- 選擇從本地文件夾安裝,路徑指向本倉庫的檢出目錄(README 要求以 checkout 方式指向倉庫,而非憑空拼接遠程名;具體目錄需你自行取得源碼副本,本文不涉及
git clone步驟)。 - 重載窗口:Ctrl+R。瀏覽器半部按頁面加載注入,重載後右鍵菜單纔會出現。
命令行(腳本安裝)¶
README 給出的形式爲:
dsh plugin --profile <name> add <path-or-git-url>
該命令安裝 package 半部;對應 profile 的 dsh.profile.bundles 列表中也需包含本包(插件管理器在 UI 路徑下會一併處理這兩步)。<path-or-git-url> 以你環境中的實際路徑或 Git URL 爲準,勿憑插件目錄名臆造 github:owner/repo 字符串。
安裝或更新插件後同樣建議 Ctrl+R 重載窗口。
典型用法¶
- 在 DSH 消息輸入框中輸入或保留一處拼寫可疑的英文詞。
- 在該詞上 右鍵。
- 若有建議,點選其一完成替換;若爲專有名詞或術語,可選 Add to dictionary。
- 需要常規編輯時,使用同菜單中的 Cut / Copy / Paste / Select all / Undo / Redo。
未在 Composer 內右鍵時,不會出現本插件菜單;其他界面區域行爲不變。
適用場景與注意¶
適合:經常在 DSH Composer 裏寫英文提示、日誌片段或技術描述的開發者,希望在桌面殼內用右鍵快速改詞,而不只依賴波浪線提示。
安裝前建議:
- 插件隨當前 DSH 進程權限 運行,客戶端腳本可訪問頁面 DOM 與
localStorage;安裝前應自行查看 源碼倉庫 與 MIT 許可證(捆綁詞表另涉 FrequencyWords 的 CC-BY-SA 歸屬,見 README)。 - 社區目錄 SkillHub 插件頁 與 GitHub 爲獨立維護入口,與 DeepSeek / 幻方無官方從屬關係;DSH 生態遵循「一切皆插件」,本文不將其描述爲官方應用商店條目。
維護者自行重建客戶端(可選,需 Node.js):僅在刷新詞表或改模板時執行,普通用戶安裝預構建的 client.js 即可。倉庫根目錄示例:
node tools/prepare-words.mjs --limit=30000 --min-count=2
node tools/build-client.mjs
node tools/test-client.mjs
其中 prepare-words.mjs 會向 .tmp/ 下載頻率表(git 忽略);完成後仍需重載應用窗口。
結尾¶
osman3n/dsh-spell-suggestions 在 Lexical Composer 上疊加捕獲階段右鍵菜單:有限條數的詞典建議、用戶詞典與完整編輯命令,針對 DSH 桌面殼缺少原生上下文菜單的缺口。查閱詳情與 issue 可訪問 GitHub,分類瀏覽見 SkillHub 目錄頁。