我经常遇到这样的情况:我有很多折叠的线条,我正在写这些代码,在这些折叠之上.一旦我输入'{',下面的所有折叠打开.即使vim这样做是合法的,但再次关闭所有折叠也是令人恼火的.这种情况有办法解决吗?
eck*_*kes 19
我有同样的问题,可以使用这个vimtip解决它.
提示描述的摘录很少:
如果您使用任何类型的自动折叠方法,无论是标记,语法还是表达式折叠,插入开始折叠的文本将自动打开插入点下方的所有折叠.这可能非常烦人.为了解决这个问题,您可以在进入插入模式时暂时切换到手动折叠方法,并在离开时切换回来.
关键是要设置foldmethod到manual编辑开始时:
autocmd InsertEnter * if !exists('w:last_fdm') | let w:last_fdm=&foldmethod | setlocal foldmethod=manual | endif
Run Code Online (Sandbox Code Playgroud)
完成编辑后,重置foldmethod为原始值:
autocmd InsertLeave,WinLeave * if exists('w:last_fdm') | let &l:foldmethod=w:last_fdm | unlet w:last_fdm | endif
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1072 次 |
| 最近记录: |