如何让 google cloud shell 在 vi​​m 中正确识别 Esc 键

use*_*306 5 vim google-cloud-shell

Esc 键在 vim 中大量使用,用于从插入、命令或可视模式返回正常模式。当您在云 shell 上的 vim 内按 Esc 键时,光标会改变形状并且 vim 会阻塞。如果你连续按 Esc 键或者点击光标本身,那么 vim 会再次工作。我习惯在 vim 中使用 Esc 键恢复正常,因此这使得在云 shell 上使用 vim 非常痛苦。

我不必使用 Esc 键(我可以使用 Ctrl+c 或 Ctrl+[,除了横幅提示仍然声称 vim 在切换到正常模式时处于 INSERT 模式之外),但很难改变我的习惯。

vim 光标在按 Esc 键之前处于 INSERT 模式

vim 光标在按下 Esc 后立即变空,但仍处于 INSERT 模式

再按 Esc 两到三下并等待即可进入 NORMAL 模式

我已经研究过在 vim 中重新映射 Esc 键,但这会使 vim 变得混乱,并且出现奇怪的行为(请参阅如何在 vim 中禁用 Esc 和光标键中不要更改 Esc 键映射的警告)。

退格键在 vim 中也不起作用,但可以在 .vimrc 中修复:

inoremap <bs> <left><del>
Run Code Online (Sandbox Code Playgroud)

如果 Esc 键映射没有修复,那么我将不得不强迫自己学会不使用 Esc 键。云 shell 上 Esc 键的最佳替代方案似乎是 Alt+Space - 因为这会调用返回正常模式并关闭底部的 --INSERT 模式消息。

小智 0

您必须(快速)按两次 escape 才能进入 ESC 模式。