当我在插入模式下使用vim中的箭头键时,我会插入字母而不是移动。
有谁知道会导致什么?
提前致谢
答案 0 :(得分:6)
您的vim
似乎是从vi
兼容模式开始的。这样做
echo $HOME
$HOME
位置是否有.vimrc文件(如果您没有创建).vimrc
文件中
:set nocompatible
找到针对同一问题here的更多解决方案(特别是如果您的问题与终端相关,那么密钥解决方案的重新映射可能对您有用)
答案 1 :(得分:5)
如果这些键在正常模式下工作正常,但是没有插入则必须有一些映射到前一个或两个字符(通常<Up>
是<Esc>[A
(使用CSI的终端)或<Esc>OA
(xterm))。尝试检查
verbose imap <Esc>
,在插入模式下以<Esc>
开头应该没有太多映射(例如,我没有)。我可以说,使用箭头键在插入模式下正常工作,使用
inoremap <Esc> <Esc>
产生的行为与终端识别问题或“兼容”设置有关。
答案 2 :(得分:3)
以下对我有用。把它放在你的.vimrc
中:set term=cons25
答案 3 :(得分:1)
:echo $HOME
。:set nocompatible
参考:http://vim.wikia.com/wiki/Fix_arrow_keys_that_display_A_B_C_D_on_remote_shell
答案 4 :(得分:1)
这里的答案都不适用于我。我在Linux,konsole / yakuake终端和tmux。这个修复对我有用:
nnoremap <silent> <ESC>OA <ESC>ki
nnoremap <silent> <ESC>OB <ESC>ji
nnoremap <silent> <ESC>OC <ESC>hi
nnoremap <silent> <ESC>OD <ESC>li
inoremap <silent> <ESC>OA <ESC>ki
inoremap <silent> <ESC>OB <ESC>ji
inoremap <silent> <ESC>OC <ESC>hi
inoremap <silent> <ESC>OD <ESC>li