- 当我打开文件时,它看起来像这样:
甚至这个
- 当我打开所有折叠时,当我导航到另一个缓冲区并返回时,它们会再次关闭。
- 为了能够使用它,我
zR
每次打开缓冲区时都必须申请。
我有这些设置.vimrc
:
set foldlevelstart=99
set foldlevel=99
请指出我如何禁用折叠,或者至少导航到另一个缓冲区而不是关闭打开的缓冲区。
你不是一个人。
set nofoldenable " disable folding
添加set nofoldenable
到您的 ~/.vimrc 以禁用折叠。
这是一篇简短而简明地总结了折叠为什么很酷的文章。一个原因是折叠使导航非常大的文件变得轻而易举。
如果您想启用折叠,并且总是从所有折叠打开开始,vim wiki 会告诉您如何操作。 您感兴趣的方法可能是自动命令方法。
" Tweak the event and filetypes matched to your liking.
" Note, perl automatically sets foldmethod in the syntax file
autocmd Syntax c,cpp,vim,xml,html,xhtml setlocal foldmethod=syntax
autocmd Syntax c,cpp,vim,xml,html,xhtml,perl normal zR
我还建议为您使用的语言搜索自定义折叠方法。简单地谷歌搜索“vim <在此处插入语言>折叠”应该会带来许多选项。尝试不同的选项,直到找到您喜欢的折叠方法。
我已将此行添加到我的.vimrc
文件中,因为我遇到了同样的问题:
autocmd FileType * exe "normal zR"
每次打开文件时都会自动执行此命令。所以你不会看到错误,折叠功能也不会丢失)
只需再添加一个以使其完整到讨论点。
要启用代码折叠:
:set foldenable
或者简而言之,:set fen
要禁用代码折叠:
:set nofoldenable
或者简而言之,:set nofen
启用代码折叠后,您将zf,zo etc
根据:set fdm=xxxx
典型值所在的设置随意使用所有命令expr,syntax,manual etc.
Vim 使禁用折叠变得非常困难,尤其是在使用 vimdiff 时。
以上发布的解决方案都没有对我有用,但这确实(添加到 ~/.vimrc):
au WinEnter * set nofen
au WinLeave * set nofen
抱歉,如果我在回答相关问题,但我发现在关闭折叠的同时显示两个文件很有用,如下所示:
vim "+set nofen" -O file1 file2
我设置foldlevel=20
,foldlevelstart=20
我使用foldmethod=syntax
。它帮助我在 vim 中正确折叠。
set nofoldenable
禁用折叠,但有时我需要它