如何避免Vim中横向移动光标时自动展开折叠?
解决Vim横向移动光标自动展开折叠的问题
这个问题我之前也碰到过,其实是Vim的折叠行为配置在搞鬼~默认情况下,Vim的foldopen选项包含了hor(horizontal movement,即横向移动)参数,所以当你用h/l键横向移动光标到折叠区域时,就会触发自动展开。调整这个配置就能解决问题:
临时生效(仅当前Vim会话有效)
在Vim命令模式下直接输入以下命令:
:set foldopen-=hor
执行后再用h/l横向移动光标,折叠就不会自动展开了。
永久生效(所有Vim会话都适用)
把配置添加到你的Vim初始化文件里,一劳永逸:
- 打开Vim配置文件,命令模式输入:
:e ~/.vimrc " Linux/macOS用户用这个 " 或者 Windows用户用 :e $HOME/_vimrc
- 在文件末尾添加一行:
set foldopen-=hor
- 保存退出(输入
:wq),下次启动Vim就会自动应用这个设置。
额外小提示
如果之后想要恢复默认的横向移动展开折叠的行为,只需要执行:
:set foldopen+=hor
内容的提问来源于stack exchange,提问作者mhf
相关产品推荐
相关产品推荐

