iPad Pro搭配微软通用折叠键盘使用VI编辑器:Esc键失效求解决方案
我之前搭配微软这款折叠键盘在iPad上用VI时,也碰到过一模一样的问题——Ctrl+[完全没反应,折腾了好一阵才找到几个靠谱的解决方案,分享给你:
用键盘自带的FN组合键替代Esc
微软通用折叠键盘没有单独的Esc键,默认在iPad系统下是把FN + Backspace映射成了Esc功能,你可以试试这个组合,亲测在VI的插入模式下按这个能正常切回正常模式。如果这个不行,再试试FN + 左箭头键,部分场景下这个也能生效。自定义VI的键位映射
如果觉得FN组合键麻烦,可以直接修改VI的配置,把你顺手的组合键改成Esc的功能。比如在你的~/.vimrc文件里添加一行:imap <C-c> <Esc>这样在插入模式下按
Ctrl+C就能直接退出到正常模式,和Esc的效果完全一样。要是Ctrl+C也有冲突,还可以换成Ctrl+X或者其他你常用的组合,比如:imap <C-x> <Esc>通过iPad系统设置修改硬件键盘映射
这个方法一劳永逸,不止VI能用,所有需要Esc的应用都能受益:- 打开iPad的「设置」→「通用」→「键盘」→「硬件键盘」
- 选择「修改键」,找到你想替换的键(比如平时用得少的Caps Lock)
- 把它的映射改成「Esc」,保存后按这个键就相当于Esc了
检查终端App的自定义键位
如果你是用第三方终端App(比如Termius、Blink Shell)运行VI,有些App本身支持自定义键位。进入App的设置,找到「键盘映射」或者类似选项,把某个组合键(比如Ctrl+Shift+[)设置成Esc,这样就能绕过系统的键位限制。
另外说下为什么Ctrl+[无效:微软这款键盘在iPad上的Ctrl键识别有时候会和系统或终端App的默认映射冲突,导致Ctrl+[没法被VI识别成Esc。上面的几个方案基本都能解决这个问题,优先试试第一个FN组合键,最省事。
内容的提问来源于stack exchange,提问作者thenakulchawla

