macbook禁用键盘_一行命令禁用 MacBook 内置键盘

去年底阿麦换了新的 MacBook Pro,于是她自学生时代就一直在用的老款 MacBook Pro 就归我当玩具了。一度考虑过将其出售,但是想到自己还闲置了一块 SSD,就想着干脆换上让它继续服役。

于是买了光驱硬盘支架,想着有时间就给换上。然而换了新工作以后实在忙碌,这一拖就到了上个月。那天下午在想事情,手里没自觉的就拆开了支架包装,索性花了半小时把原来的光驱拆了,换上了硬盘。之后就边工作,边装着系统,还顺手把 SSD 和原来的 HDD 做成了 Fusion Drive。我没有测速度的习惯,总之装上以后觉得速度简直飞起,就已经心满意足了。

不过这台 2012 年中的 MBP 实在太重了,完全没有「移动办公」的欲望。刚好我还有个 HHKB 是闲着的,就连在了电脑上来用,像头图那样。

不过这样就带来了一个问题,你在敲击上方的键盘以后,内建的键盘也有可能被触动,从而引发一些错误的输入。理想的解法当然是插上外接键盘就禁用内建的,拔掉外接就恢复内建。在 GitHub 找了一个名为「HHKBAssistant」的插件,奈何代码过于久远,它可以成功监测键盘的拔插,但是没法成功禁用内建的键盘。

研究了一番源代码以后发现其禁用内建键盘的功能是通过 unload 其驱动来实现的,其实只要一行代码就完成了:

sudo kextunload /System/Library/Extensions/AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext/

我直接在终端(Terminal.app)里输入,并且输入管理员密码以后就成功将内建键盘禁用了。但不知何故,其脚本没能运行,猜测是因为没法在新系统上获得权限导致的,打算有时间再研究一下该插件的源代码,改好以后提交一个版本好了。

禁用键盘以后要恢复也简单,也是一行代码重新装载对应的驱动就行:

sudo kextload /System/Library/Extensions/AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext/

最近因为一直开着终端研究 Python 代码,所以就把这两个动作各自添了个 TextExpander 的 Snippet,一个短语就调用了。也可以做成 bash 脚本,或者是用 Alfred、Keyboard Maestro 运行,都可以。

已知问题:

如果电脑休眠以后恢复,内建键盘会自动挂载驱动,此时再使用上述命令不生效,重启可以解决。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值