我最近从 OS X 10.6(我认为)升级到 10.9。从那时起,在 中编辑时vim,箭头键似乎会“自发”停止工作。
有一次,我沮丧地“捣碎”了其中一个箭头键,最终显示“E388 找不到定义”错误。在我经历过的所有其他时间里,箭在工作了一段时间后,突然开始向我发出叮当声!
退出并重新打开可以暂时解决问题。但是,我想阻止它!
有谁知道这可能是什么?以及如何修复它?
看起来我的默认值vimrc在更新过程中被修改了。如果我的记忆是正确的,它以前是一个相当大的文件。现在,它只包含这个:
" Configuration file for vim
set modelines=0 " CVE-2007-2438
" Normally we use vim-extensions. If you want true vi-compatibility
" remove change the following statements
set nocompatible " Use Vim defaults instead of 100% vi compatibility
set backspace=2 " more powerful backspacing
" Don't write backup file if vim is being called by "crontab -e"
au BufWrite /private/tmp/crontab.* set nowritebackup
" Don't write backup file if vim is being called by "chpass"
au BufWrite /private/etc/pw.* set nowritebackup
Run Code Online (Sandbox Code Playgroud)
我还不知道这些选项有什么作用。我会研究它 - 但是,希望这里有人比我谷歌和阅读更快地知道......
小智 30
在James Hodgkinson 的博客中找到,以下命令对我有用。请注意,它将刷新 vim 屏幕。
:!reset
Run Code Online (Sandbox Code Playgroud)
小智 18
我也遇到过几次这个问题。我碰巧在另一台通过 SSH 登录的计算机上运行 GNU screen。为了解决这个问题,我分离了我的屏幕 ( Ctrl- a d),从机器上注销,重新登录,然后使用screen -x. 它可以在不注销机器的情况下工作,只需分离和重新连接屏幕。不过我想不起来了。
小智 13
在/usr/share/vim/我找到.vimrc文件的路径中...在那里我添加了这一行
set term=ansi
Run Code Online (Sandbox Code Playgroud)
它对我有用。现在箭头键在 Vim 编辑器中正常工作。