喵喵守門員

偵測到貓踩鍵盤時自動鎖定輸入,保護你正在編輯的文件。

家裡有貓的人都知道 — 你離開電腦五秒,回來文件就被改成 aaaaaaaaaaaaaaa, 或者文章一半被 Backspace 吃掉。 喵喵守門員偵測到這種高速連續輸入時,會立刻鎖定輸入法、 跳出一個 slide-to-unlock 視窗,等你回來再解鎖。

一隻黑白貓踩在 MacBook 鍵盤上

偵測邏輯

兩個偵測器各管一種情境,門檻依敏感度而變,以下是預設的「平衡」:

  • 踩過去 — 500 毫秒的滾動視窗內出現 15 次以上的鍵入, 換算是每秒 30 鍵以上。專業打字員全速大約每秒 8 到 10 鍵,不會有人持續打到這個速度。
  • 坐下來 — 同一顆鍵連續自動重複超過 3 秒。 Backspace 與 Forward Delete 的引信較短,1.5 秒就鎖,因為刪掉的東西不一定救得回來。

方向鍵與 Home / End / Page Up / Down 永遠不進偵測器, 壓著捲動是正常行為,壓再久也不會弄壞內容。

鎖定時會發生什麼

  1. 螢幕中央彈出一個鎖定視窗,上面有「▸ 滑動以解鎖」按鈕
  2. 所有後續鍵盤事件被攔截 — 應用程式看不到任何輸入
  3. 持續按住的按鍵(例如貓壓著 Backspace)會被中斷(需要 Accessibility 權限,見下方)
  4. 使用者拖動滑桿到底解鎖,鍵盤輸入恢復正常
鎖定畫面:螢幕中央出現『滑動以解鎖』視窗
偵測到異常輸入時,跳出「滑動以解鎖」鎖定畫面,後續鍵盤輸入全被攔下。

敏感度三檔

每個人的容忍度不同(家裡有暴走柯基的 vs 偶爾踩鍵盤的安靜貓)。 在偏好設定 → 基本設定 → 喵喵守門員 可調:

敏感度觸發行為適合誰
敏感 0.5 秒 10 鍵 / 壓住 1.5 秒 / Backspace 首次自動重複就鎖 家裡有特別愛踩鍵盤的寵物
平衡(預設) 0.5 秒 15 鍵 / 壓住 3 秒 / Backspace 1.5 秒 大多數人
寬鬆 0.5 秒 25 鍵 / 壓住 5 秒 / Backspace 3 秒 常常自己快打、覺得「敏感」誤觸太多
偏好設定中喵喵守門員的敏感度選項:敏感 / 平衡(建議)/ 寬鬆
在偏好設定調整喵喵守門員的敏感度(敏感 / 平衡 / 寬鬆)。

輔助使用權限(完整保護需要)

macOS 預設情況下,輸入法只能過濾鍵盤事件 — 看到再決定要不要送出。 但如果貓壓住一個鍵不放(自動重複輸入),macOS 會直接把鍵盤事件送給應用程式, 輸入法根本沒機會攔。

即時中斷持續按住的按鍵(例如貓壓住 Backspace 持續刪除), ZingIME 需要授予輔助使用(Accessibility)權限:

  1. 第一次開啟喵喵守門員時,會跳出提示問你要不要啟用完整保護 —— 按「打開系統設定」。
開啟喵喵守門員時跳出「想啟用完整的防貓保護嗎?」提示
  1. (或隨時)在偏好設定 → 基本設定,找到「輔助使用權限」,按「開啟系統設定」。未授權時這裡會顯示 ⚠ 未授權
偏好設定中「輔助使用權限」顯示未授權、可按開啟系統設定
  1. 在「系統設定 → 隱私權與安全性 → 輔助使用」清單裡,打開「晶晶輸入法」的開關。
系統設定 → 隱私權與安全性 → 輔助使用,打開晶晶輸入法
  1. 回到偏好設定,「輔助使用權限」會變成 ✓ 已授權,完整保護就生效了。若狀態沒立刻更新,登出 macOS 再登入一次即可。
授權後偏好設定顯示「輔助使用權限 ✓ 已授權」

沒給權限會怎樣? 鎖定視窗還是會跳出,但持續按住的鍵會繼續輸入 直到貓自己鬆開。換句話說,鎖定機制仍在運作、但保護力受限。

狀態指示

選單列輸入法選單會顯示喵喵守門員當前狀態:

  • 喵喵守門員 開啟 · 完整保護 — 偵測 + 中斷持續按鍵都能做
  • 喵喵守門員 開啟 · 受限(無輔助使用) — 偵測能做、但無法中斷持續按鍵
  • 喵喵守門員 關閉 — 完全停用

啟用 / 停用

兩個地方都可以切換:

  • 選單列輸入法選單 → 喵喵守門員
  • 第一次啟用 ZingIME 時的教學第 6 頁有勾選方塊可以選擇開啟

偏好設定 → 基本設定的「喵喵守門員」只調敏感度與查看輔助使用權限狀態,沒有開關。

為什麼這是輸入法的功能

輸入法本來就站在「鍵盤事件 → 文字輸出」這條路徑的中間, 技術上是最適合做這件事的地方。 寫成獨立應用程式反而需要更高的系統權限、可能會與其他輸入法衝突。 內建在 ZingIME 裡,能用就用、不用就關 — 沒有額外負擔。