macos的vim我用的是macvim。输入法是rime,从insert mode按esc切换到normal mode时,会切换到英文状态。再按i或a进入insert mode就不行,也可能是rime的功能。macvim用得少。
mac下切换中英文状态不如win下方便,只能是rime和英文输入法之间的切换,不知道怎么做到在rime中切换中英文状态。
照着emacs mac port的代码在master分支上稍微改了一下,像windows版一样增加2个系统函数,切换输入法。测试下来不如windows版好用,无法做到rime中切换中英文状态。我的代码写得太垃圾,没commit,自用吧。可以看看论坛里的 smart-input-source 或者用 macism 。
BTW:apple的输入法api的文档极其垃圾,在官网上几年前是有的,后来又取消了,没法查了。无力吐槽水果。对系统开发人员太不友好。