最近在VSCode的终端中运行OpenCode,发现一个问题:使用中文输入法时,按下Caps Lock键,会变成英文大写,而预期情况应该是切换成英文小写才对。
在VSCode的终端中输入命令时并没有这样的问题,在其他终端(Terminal、Iterm,以及Trae、Intellij等IDE的终端)中运行OpenCode也没有这样的问题。
只有在VSCode中运行OpenCode才会这样。
尝试翻了各种配置项,也没找到方法,禁用了所有的扩展也没用。
猜测可能是Kitty Keyboard Protocol相关的问题,到处搜了一下,在reddit上找到了这篇帖子。
根据上面的说法,在settings.json里加入这样一行:
"terminal.integrated.enableKittyKeyboardProtocol": false
重启VSCode,问题果然解决。