我刚开始使用Vim作为IDE。我现在使用它作为测试编辑器一段时间了,所以我不必经常进入命令模式。但是,既然我用Java编程,我必须进入命令模式来制作文件,编译/运行它......等等。
问题是:我需要一种在两种模式之间切换的好方法。
我在网上查看它说<Esc>
键应该这样做,但这对我不起作用(也许不适用于gVim?我不知道为什么。)
我每次都要按 CTRL O 进入命令模式;转义键在该模式下工作......它将我带回插入模式。但是,在命令模式和插入模式之间切换是否有更好或更简单的方法?
答案 0 :(得分:105)
按 ESC 从插入模式退出到正常模式,您可以按:键入命令。 再次按 i 返回插入模式,你就可以了。
我不是Vim大师,所以其他人可以更有经验并给你其他选择。
答案 1 :(得分:41)
看起来您的Vim是在简易模式中启动的。请参阅:help easy
。
当使用-y
参数或evim
调用Vim时,或者您的:set insertmode
配置中某处.vimrc
时,会发生这种情况。找到源并禁用它;暂时这也可以通过 Ctrl + O :set noim
输入。
答案 2 :(得分:13)
在other questions中已经提到过,但 ctrl + [相当于所有键盘上的 ESC 。
答案 3 :(得分:4)
使用jj
在我的情况下,.vimrc(或在_vimrc
中的gVim)设置如下。
inoremap jj <Esc> """ jj key is <Esc> setting
答案 4 :(得分:2)
来自emacs我发现我喜欢用ctrl +
键来做东西,而且在vim中我发现[ctrl + C]
和[alt + backspace]
都会从插入模式进入正常模式。你可以尝试看看是否有任何一个适合你。
答案 5 :(得分:0)
对于那种问题还有另外一种解决方案,我认为这种情况相当罕见,如果你在OS X Sierra上使用vim,你可能会体验到它。实际上,这是Esc按钮的问题 - 而不是vim。例如,我无法使用Esc在youtube上退出全屏视频,但我和它一起生活了几个月,直到我遇到与vim相同的问题。
我找到了this解决方案。如果你懒得跟随外部链接,关闭Siri并杀死Activity Monitor中的进程有帮助。
答案 6 :(得分:0)
您可以在插入模式下使用Alt + H,J,K,L来移动光标。
答案 7 :(得分:0)
对我来说,问题在于我在recording mode中。要退出录制模式,请按 q 。然后 Esc 按我的预期工作。