「自動切換鍵盤佈局」的意思,取決於由什麼來決定鍵盤佈局。可能是你正在輸入的視窗、前景的 App 或網站,或是你手上那把實體鍵盤。macOS 只涵蓋第一種,其餘的則要靠 App。請依照「由什麼決定鍵盤佈局」來挑選。
所有方法一覽
| 由什麼決定鍵盤佈局 | 內建 | 適合 | |
|---|---|---|---|
| 快速鍵或「輸入法」選單 | 你自己,每次都要 | 是 | 偶爾切換 |
| 依文件 | 前景的視窗 | 是 | 每份文件只用一種語言 |
| Input Source Pro | App,或瀏覽器中的網站 | 否,免費 App | 一把鍵盤,每個 App 用一種語言 |
| Keyameleon | 你正在打字的鍵盤 | 否,免費 App | 印著不同佈局的多把鍵盤 |
| Karabiner-Elements | 你撰寫的規則 | 否,免費 App | 已經在自訂鍵盤的人 |
內建:快速鍵與「輸入法」選單
先在「系統設定」›「鍵盤」›「文字輸入」›「編輯⋯」中加入你的鍵盤佈局。之後,Control 空白鍵會選擇上一個輸入方式,Control Option 空白鍵會選擇下一個;也可以在「鍵盤」設定中把 🌐 鍵設為更改輸入方式。這些都不是自動的,但其他所有方法都建立在這個基礎上。
內建:每份文件一種鍵盤佈局
在同一個「輸入方式」設定中,開啟「自動切換至文件的輸入方式」。之後每個視窗都會記住你最後在其中使用的輸入方式,回到該視窗時 macOS 會自動還原。這是 macOS 唯一的自動切換功能,適合每份文件只用一種語言撰寫的人。
依 App 或網站:Input Source Pro
Input Source Pro 是一款免費、開源的 App,可為每個 App 設定預設輸入方式,在大多數瀏覽器中還能為每個網站設定。終端機用英文、WeChat 用中文、某個網站用日文。它也會在螢幕上顯示目前輸入方式的指示器。看看它和 Keyameleon 的比較。
KeyboardHolder 的運作方式相同,在中文使用者中很受歡迎:支援依 App 設定輸入法規則、在瀏覽器中依網域設定規則,並支援 Spotlight、Alfred 和 Raycast。看看它和 Keyameleon 的比較。
依鍵盤:Keyameleon
如果你的鍵盤上印著不同的佈局,例如美式 MacBook 搭配德文外接鍵盤,那麼文件和 App 都不是正確的判斷依據,鍵盤才是。Keyameleon 是一款免費、開源的選單列 App,適用於 macOS 26 或以上版本:為每個鍵盤指定一次輸入方式,之後開始在某個鍵盤上打字時就會自動切換,在每個 App 中都一樣。外接鍵盤指南會帶你完成整個設定。
其他依鍵盤切換的選擇還有支援 macOS 14 或以上版本的 Keychange,以及命令列工具 autokbisw。
規則:Karabiner-Elements
Karabiner-Elements 用 JSON 撰寫的規則重新對應按鍵,而規則可以選擇輸入方式,例如當按鍵來自特定鍵盤時。它是最有彈性的選擇,也是設定起來最費工的一種。請參閱 Keyameleon vs Karabiner-Elements。
只選一種規則
這些方法改的都是同一個系統設定,同時執行兩種,就會輪流互相覆蓋。先決定由什麼來選擇鍵盤佈局(視窗、App 或鍵盤),再使用遵循這項規則的那一個工具。