Linux vi箭头键在插入模式下中断

时间:2009-05-01 19:55:50

标签: linux vim vi

我的箭头键在家中以插入模式在vi中不起作用,它们每个都插入换行符和大写字母,如“A”。有办法解决这个问题吗?

11 个答案:

答案 0 :(得分:102)

我认为你正在使用vim,因为它被标记为Linux。尝试:

:set nocompatible

(您可能希望通过向其添加此命令来配置.vimrc。如果您的主目录中尚未存在,请创建一个新的.vimrc文件,运行echo $HOME以检查主目录路径。)< / p>

答案 1 :(得分:69)

Ubuntu默认使用vim-tiny,它没有vim所拥有的所有铃声和口哨声。

快速sudo apt-get install vim快速获取所有人都在谈论的所有功能。

答案 2 :(得分:34)

:set term=builtin_ansi

为我修好了。您可以在转义模式下将其粘贴到vim中(哔哔声模式)或将其添加到〜/ .vimrc的末尾而不带前导“:”

答案 3 :(得分:16)

vi在插入模式下不支持箭头键。使用vim。虽然您的vi可能只是vim的链接,但它可能被配置为像“原始”vi一样,因此禁用箭头键。只需直接调用vim。

答案 4 :(得分:8)

另一种变化:在一些.vimrc更改之后,这个问题出现了。一致的搜索最终表明,我在正常模式下巧妙地重新映射ESC并不是一个好主意。删除它解决了这个问题:

" this is NOT something you want in .vimrc:
" In normal mode, hitting Esc turns off search highlights:
nmap <ESC> :nohl<CR>  " Do NOT add this to .vimrc

答案 5 :(得分:4)

唯一对我有用的是&#34;:set term = ansi&#34;

答案 6 :(得分:1)

切换到.vim后使用git时,我遇到了箭头键的问题。

我已安装此回购 - https://github.com/sunaku/.vim

在挖了一个小时后,我发现了AutoClose插件 (不管怎样都不喜欢)打破了方向键。

插件文档建议应该设置set ttimeoutlen = 100,但是 那对我不起作用! (使用urxvt + screen或urxvt,甚至是xterm)

所以我最后删除了插件。

答案 7 :(得分:1)

我的箭头键有同样的问题,但是当我使用它时设置nocp或nocompatible然后我的退格键没有正常工作

因为某些原因我安装了vim sudo apt-get install vim,vi没有任何箭头或退格问题

答案 8 :(得分:0)

您可能还想尝试'noesckeys'

答案 9 :(得分:0)

在Windows 8.1中使用带有Cygwin的vim时遇到了同样的问题。

解决方案对我有用,只需在Cygwin终端中运行以下命令:

cp vimrc_example.vim ~/.vimrc

答案 10 :(得分:-1)

在命令行中写下:

EXINIT="set nocompatible"; export EXINIT