在wsl、wsl2、或者虚拟机下面有时会碰到这个问题:插入模式下按esc键延时不能退出到普通模式,或者一些光标显示不会变化。
有些机器上会碰到,有些机器又没有,我找不到原因,从网上搜集到下面的方法可以解决
esc键延时
vimrc中加入设置:
set timeoutlen=10
set ttimeoutlen=0
光标异常
vimrc中加入设置:
" 进入插入模式下的光标形状
let &t_SI.="\e[5 q"
" 进入替换模式下的光标形状
let &t_SR.="\e[3 q"
" 从插入模式或替换模式下退出,进入普通模式后的光标形状
let &t_EI.="\e[1 q"
" 进入vim时,设置普通模式下的光标形状
autocmd VimEnter * silent !echo -ne "\e[1 q"
" 离开vim后,恢复shell模式下的光标形状
autocmd VimLeave * silent !echo -ne "\e[5 q"
参考:
https://www.johnhawthorn.com/2012/09/vi-escape-delays/