125
  1. 当我打开文件时,它看起来像这样: 在此处输入图像描述 甚至这个 在此处输入图像描述
  2. 当我打开所有折叠时,当我导航到另一个缓冲区并返回时,它们会再次关闭。
  3. 为了能够使用它,我zR每次打开缓冲区时都必须申请。

我有这些设置.vimrc

set foldlevelstart=99
set foldlevel=99

请指出我如何禁用折叠,或者至少导航到另一个缓冲区而不是关闭打开的缓冲区。

4

9 回答 9

230

你不是一个人。

set nofoldenable    " disable folding
于 2011-02-16T13:29:29.677 回答
59

动态禁用(和启用)折叠的最简单方法是zi.

zi是切换的正常模式命令,'foldenable'就像:set foldenable!.

助记符:“fold i nvert”。见:h zi

于 2013-08-27T08:28:51.497 回答
46

添加set nofoldenable到您的 ~/.vimrc 以禁用折叠。

于 2011-02-16T13:29:09.037 回答
16

这是一篇简短而简明地总结了折叠为什么很酷的文章。一个原因是折叠使导航非常大的文件变得轻而易举。

如果您想启用折叠,并且总是从所有折叠打开开始,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 <在此处插入语言>折叠”应该会带来许多选项。尝试不同的选项,直到找到您喜欢的折叠方法。

于 2011-02-16T14:49:05.503 回答
5

我已将此行添加到我的.vimrc文件中,因为我遇到了同样的问题:

autocmd FileType * exe "normal zR"

每次打开文件时都会自动执行此命令。所以你不会看到错误,折叠功能也不会丢失)

于 2017-02-20T11:25:22.147 回答
3

只需再添加一个以使其完整到讨论点。

要启用代码折叠:

:set foldenable或者简而言之,:set fen

要禁用代码折叠:

:set nofoldenable 或者简而言之,:set nofen

启用代码折叠后,您将zf,zo etc根据:set fdm=xxxx典型值所在的设置随意使用所有命令expr,syntax,manual etc.

于 2013-08-27T02:40:55.190 回答
3

Vim 使禁用折叠变得非常困难,尤其是在使用 vimdiff 时。
以上发布的解决方案都没有对我有用,但这确实(添加到 ~/.vimrc):

au WinEnter * set nofen
au WinLeave * set nofen
于 2014-02-15T02:11:26.440 回答
1

抱歉,如果我在回答相关问题,但我发现在关闭折叠的同时显示两个文件很有用,如下所示:

vim "+set nofen" -O file1 file2
于 2013-11-15T10:29:26.460 回答
1

我设置foldlevel=20foldlevelstart=20我使用foldmethod=syntax。它帮助我在 vim 中正确折叠。

set nofoldenable禁用折叠,但有时我需要它

vim.wikia

于 2014-04-17T11:38:33.920 回答