看一下這一則舊的 GitHub issue,OpenVanilla 可以 override keyboard layout 設定:openvanilla/openvanilla#6 (comment)
延續上述 issue comment 說的,這個設定可以用在 OpenVanilla 單一輸入法模組 (將設定寫入 domain org.openvanilla.OVIM${module_name} 當中),也可以用在 OpenVanilla 整體設定上 (將設定寫入 org.openvanilla.inputmethod.OpenVanilla 當中)。
確實的運作原理,可以從原始碼 (https://github.com/openvanilla/openvanilla/blob/master/Source/Mac/OVInputMethodController.mm#L135) 找到:當 macOS 切換至 OpenVanilla 的 input method controller 時,InputMethodKit 給了輸入法機會,可以 override 當前所使用的 layout。OV 先是詢問有沒有目前使用輸入法模組(例如倉頡、行列…)特設的 keyboard layout override,如果沒有,則看看有沒有 OV 整體設定的 override,如果還是沒有,最後 fallback 回預設的 layout,也就是 com.apple.keylayout.US。
又,這個 command line tool 可以列出以及修改現有的 keyboard layout: https://github.com/minoki/InputSourceSelector