macOS Caps Lock 延遲修正:CapsLockDelayOverride 指令與持久化提醒

這篇 Threads 是一個很實用的 macOS 小技巧:如果你用 Caps Lock 切換中英文,覺得按下去有延遲,可以在 Terminal 貼上這個指令:

sudo hidutil property --set '{"CapsLockDelayOverride":0}'

原文只有一句「所有 Mac 使用者都應該知道的指令,貼在終端機」,後續作者補充這個指令是用來處理 macOS 原廠 Caps Lock 預設延遲。留言也有不少人表示「原來是故意有延遲」「相遇恨晚」「一直打錯中英文」。

這個指令在做什麼

macOS 對 Caps Lock 有一個刻意設計的延遲,目的是避免誤觸。問題是,很多中文使用者會把 Caps Lock 當成中英文切換鍵,這個延遲就會變成輸入體驗上的摩擦:想打中文時還停在英文,想打英文時又慢半拍。

hidutil property --set 是 macOS 用來設定 HID 裝置屬性的工具。CapsLockDelayOverride: 0 的意思是把 Caps Lock 延遲覆蓋為 0,讓切換更即時。

何時值得用

適合:

  • 用 Caps Lock 切換中英文。
  • 常常覺得第一個字母或第一個中文字打錯。
  • 明顯感覺 Caps Lock 切換慢半拍。
  • 寫程式、寫中文文件、聊天頻繁切換中英。

不一定適合:

  • 不用 Caps Lock 切換輸入法。
  • 已經改用 Control + Space、Fn、地球鍵或其他快捷鍵。
  • 完全感覺不到延遲。

留言裡也有人說自己沒感覺,這很正常。這個設定高度依賴個人輸入習慣,不是每台 Mac 都必改。

重開機後可能會失效

重要留言補充:這個設定重開機後可能會失效,因為 macOS 會回到預設值。作者後來也承認如果想要重開機自動啟用,需要另外設定。

比較穩的做法是建立 LaunchAgent,在登入時自動執行該指令。不過這牽涉到 sudo 權限與系統啟動項,建議只在確認自己需要這個設定後再做。對一般使用者,先手動執行測試幾天即可。

安全提醒:不要亂貼 Terminal 指令

這串留言裡有人開玩笑貼:

sudo rm -rf --no-preserve-root /

這是危險刪除指令,不要執行。macOS 不一定支援完全相同參數,但任何 sudo rm -rf / 類型指令都應該視為高風險。

這也提醒一件事:Threads 上看到「貼在終端機」的指令,不管多少人按讚,都要先理解它做什麼。尤其包含 sudorm -rfcurl | bash、修改系統設定、關閉安全機制的指令,一律要先查。

Raycast 補充

作者後續也推薦 Raycast,理由是可以自定義快捷鍵、內建比原廠好用的剪貼簿、Spotlight 替代、查匯率等。這和另一篇 Mac 工具清單互相呼應:Raycast 是 Mac 生產力工具裡最值得優先建立的 command palette。

我的判斷

這個 CapsLockDelayOverride 是很小但很有感的輸入法摩擦修正。它不會讓 Mac 變快,但會讓中英切換頻繁的人少犯很多「第一個字打錯」的錯。

我會把它列入 Mac 新機設定 checklist,但加兩個註記:

  1. 先手動跑,確定有感再做 LaunchAgent 持久化。
  2. 任何 Terminal 指令都先理解再貼,尤其看到留言區有人貼危險指令時更要警覺。

原始來源: https://www.threads.com/@bushi.neko/post/DX3r-p-EWr5

macOS Caps Lock 延遲修正:CapsLockDelayOverride 指令與持久化提醒 | Allen 知識庫 | Allen 知識庫