所以我在终端vim中编辑一个UTF8文件,当我按下导航键时突然出现这些奇怪的字符。因此,所附图像显示了一个这样的字符在从文件末尾向上移动后打印到屏幕上。这些家伙只是被打印出来但从未保存到缓冲区中。当该行移出视野然后又移回时,该字符不会再次打印。这是一个完全随机的事件,似乎从来没有发生在同一地点。一个例外是我在文件末尾并且碰巧反复按下向下键。
编辑:新图像:Set term=cons25
当 Vim 对从终端仿真器接收到的按键感到困惑时,这些转义字符就会出现。接收到的箭头键Escape
后跟一个字符 fromA
到D
:
^]0A
是<up>
,^]0B
是<down>
,^]0C
是<right>
^]0D
是<left>
。编辑 UTF-8 文件与您的问题无关。
这是我/.vimrc
解决这个问题的方法:
nnoremap <Esc>A <up>
nnoremap <Esc>B <down>
nnoremap <Esc>C <right>
nnoremap <Esc>D <left>
inoremap <Esc>A <up>
inoremap <Esc>B <down>
inoremap <Esc>C <right>
inoremap <Esc>D <left>
我不知道更好的解决方案。