不同 OS 平台間本來就很多操作習慣不一樣。像好幾年來我都是在 macOS 環境進行開發,在 macOS 上切換中英文輸入,快捷鍵我習慣用 Caps Lock 鍵 (或稱「中/英」鍵) ;有時切換到 Windows 上打字想切換大小寫時,也容易習慣性按成 Caps Lock 鍵。
之前因為在 Windows 只做少量簡單文書工作,不會頻繁在 macOS 和 Windows 間切換,影響不大,一時按錯就重按就好,幾分鐘後就會適應該 OS 的習慣。
但最近由於一些軟體工具的限制,有些開發只能在 Windows 進行,我變得比較頻繁在 macOS 和 Windows 間切換做不同開發,太常按錯中英切換快捷鍵這件事開始讓我感到困擾,影響到效率。
於是開始研究怎麼讓 macOS 的中英切換快捷鍵能和 Windows 一致,也就是用 Shift 鍵切換,盡量讓我可以在兩邊平台維持同樣的打字習慣。
先說結論:要想 macOS 能用 Shift 單一顆鍵就切換中英文,純內建無法,需要裝別的軟體輔助,不過動作並不難。
macOS 和 Widnows 切換中英的原理不一樣
先簡單介紹一下 macOS 和 Widnows 的輸入法管理方式其實不一樣。
Windows 是「同一個輸入法底下,還有分中英文模式」,例如下圖分別是中文和英文模式,通常透過按 Shift 鍵切換,但輸入法其實都是微軟注音,這也就是大部分人在 Windows 上所謂的中英切換。
而 macOS 上沒有分什麼中文模式、英文模式,切換中英實際上就是切換「ABC」和「注音」這兩種不同的輸入法。
以下整理 macOS 上切換輸入法常見的做法。
切換方法 1: macOS 內建的組合快捷鍵
control + 空白鍵
:切回上一次用的輸入法,在 ABC 和注音兩種輸入法間無限循環,效果就類似中英切換。option + command + 空白鍵
:按順序切換下一個輸入法。
舉例來說,我的 mac 有安裝三種輸入法:ABC、注音、嘸蝦米。
- 連續按
control + 空白鍵
,效果是:ABC -> 注音 -> ABC -> 注音 - 連續按
option + command + 空白鍵
,效果是:ABC -> 注音 -> 嘸蝦米 -> ABC
如果不喜歡內建的組合鍵,也可以自行修改:
切換方法 2: 內建「中/英」鍵或 Caps Lock 鍵一鍵切換
類似 Windows 的 Shift,只是 macOS 是用 Caps Lock,優點是不用按多個組合鍵,只要一個鍵更方便。
要當前輸入法是 ABC 或注音才有效。
這是 macOS 內建功能,需要開啟設定。
macOS 12.x Monterey 以前的設定方式
:「系統偏好設定」 -> 點「鍵盤」 -> 選「輸入方式」tab -> 勾選「使用『中/英』鍵來切換『美國』及目前輸入方式」
新的 macOS 13.x Ventura 介面風格改很大
,設定的路徑如下圖:
切換方法 3: 透過選單列上的語言圖示來切換
最單純的方法。
如果你的選單沒有出現圖示,可以透過以下設定開啟:「系統偏好設定」 -> 點「鍵盤」 -> 選「輸入方式」tab -> 勾選「在選單列中顯示輸入法選單」
切換方法 4: 安裝 Karabiner-Elements 軟體設定 Shift 一鍵切換
由於 Shift 鍵在 macOS 有特別地位,是用來跟其他鍵搭配作熱鍵組合,無法單獨設定為熱鍵,因此需要靠第三方軟體達到目的。
Karabiner-Elements 是一個強大的 macOS 上鍵盤客製化軟體,網路上搜尋 macOS 按鍵客製化,應該有 8 成文章都會提到Karabiner-Elements。
Karabiner-Elements 支援最新的 macOS 13.x Ventura。
注意!這個方法要配合方法 2,也就是 Caps Lock 鍵一鍵切換的設定要打開。
下面教學怎麼安裝設定:
step 1: 安裝
依照個人習慣,可以選擇以下方式安裝:
- 到Karabiner-Elements 官網 下載 dmg 檔安裝
- 用 homebrew 安裝
$ brew install cask karabiner-elements
安裝完後會看到多了兩個圖示:
- Karabiner-Elements: 主要工具,客製化鍵盤設定。
- Karabiner-EventViewer: 有趣的附帶工具,可以觀察按壓按鍵的電腦反應。
step 2: 啟動 Karabiner-Elements & 允許權限
第一次啟動時,應該會跳出下列各種視窗要求權限:
Karabiner-Elements 也會跳出一個畫面,指示去打開權限:
這裡需要去兩個地方允許權限:
系統偏好設定 -> 安全性與隱私權 -> 一般 tab
底下會看到 Karabiner 的權限要求,點右邊的允許按鈕:
系統偏好設定 -> 安全性與隱私權 -> 隱私權 tab
左邊清單找到「輸入監控」,右邊將 Karabiner 相關的三個項目進行勾選:
step 3: 匯入 Shift 一鍵切換的設定
左邊選單選「Complex Modifications」,點「Add rule」按鈕:
一開始只有預設的範例,沒有其他規則。點下面的「import more rules」按鈕:
會自動幫你打開瀏覽器前往一個網頁 Karabiner-Elements complex_modifications rules,裡面有各式各樣客製化按鍵的設定規則可以下載。搜尋找到「Change shift key (rev 2)」這一個規則,點右邊的 import 進行下載:
網頁會將你導回 Karabiner-Elements 程式:
回到 Karabiner-Elements 程式,確認匯入剛剛的規則:
回到剛剛的畫面,會看到多了剛剛匯入的「Change shift key (rev 2)」。對前兩個規則點 Enable 按鈕:
到這裡就大功告成,在 macOS 上單點 Shift 鍵就能切換輸入法,效果和 Caps Lock 鍵一樣。
背後原理,其實是 Karabiner-Elements 幫你把 Shift 鍵 mapping 到 Caps Lock 鍵,去觸發原本 Caps Lock 鍵的中英切換效果。
由於中間多了一層轉換,仔細觀察其實可以發現,按 Shift 鍵的切換速度會頓一下,不像直接按 Caps Lock 鍵那樣瞬間切換,密集連續按的時候會更明顯。
結論
透過 Karabiner-Elements 設定,雖然切換速度頓一下這點在手感上多少有差,但至少讓中英文切換的熱鍵在 macOS 和 Windows 能一致,適應與否就看各人習慣囉。
References
- Karabiner-Elements(https://karabiner-elements.pqrs.org/)
- Mac 輸入法切換教學,教你這 4 種快捷鍵在 Mac 鍵盤切換語言 – 塔科女子(https://www.tech-girlz.com/2021/01/mac-switch-language.html)
- macOS 快速切换中英文输入法的快捷键是什么? – 知乎(https://www.zhihu.com/question/19611143)
- Karabiner 免費鍵盤按鍵自訂工具,讓一般鍵盤也有 Mac 鍵位及快速鍵(https://free.com.tw/karabiner/)
- Windows 10切換輸入法和輸入語文的快速鍵 @ 軟體使用教學 :: 隨意窩 Xuite日誌(https://blog.xuite.net/yh96301/blog/496732587)