BigSur 下目前可行的单键切换输入法方案
macOS 的中英输入法切换对我而言一直是个老大难问题,感觉总是无法准确知道自己目前的输入语言,以及能准确快速地切换到自己需要的输入法
好在后来接触到 karabiner,搞了一份右 cmd 切换中文,右 shift 切换英文的方案,简洁明了,也不影响自身组合键功能。
但是目前 BigSur 下 karabiner 用不了了,然后感觉又回到了输入法各种混乱的时期。
前两天发现 BigSur 下 hammerspoon 好像是正常运行的,并且好像这货也能做按键映射操作。于是翻了两天资料教程。终于找到一篇和我需求比较接近的 https://blog.blahgeek.com/IMLight/。
经过一番折腾(指查 hammerspoon 的 api 文档以及临时学习 lua 语法),终于初步实现了。
代码主要为两个 lua
keyMap.lua
主要修改自上面提到的那个帖子的代码,将其对象化,因为后面要两个实例跑,对应两个映射操作。因为对 lua 不熟悉,写得可能比较丑,好在能用
singleKeyChangeIme.lua
定义输入法切换以及映射按键等
用法 在 hammerspoon 的 init.lua 添加 require “singleKeyChangeIme” 引用即可。