我可以保存褶皱吗?


13

今天,我学习了如何在Vim中折叠/展开。非常方便。

出乎意料的是,当我退出文件并重新输入文件时,我创建的折痕消失了(展开)。

在我们公司的大型项目中,有很多粘性(旧式)代码块,这些代码块已经过时但必不可少。

我真的需要几乎永久折叠它们。

有没有一种简单的方法可以告诉Vim保存我的文件折叠首选项?


1
我不知道它是否可以解决您的问题,但是:mkviewand :loadview命令可能会有所帮助。您可以尝试在vimrc中添加这两行au BufWinLeave *.c mkviewau BufWinEnter *.c silent loadview并使它们适应您的特定需求。这些自动命令将在您为第一个缓冲区保留缓冲区时,以及为第二个缓冲区输入缓冲区时(仅针对C文件)自动执行。我已经从:mkview命令(:help :mkview)的帮助下复制了它们。
saginaw

1
根据帮助,它应该在使用手动折叠时恢复折叠并且该选项'viewoptions'包含folds。如果要对其他文件类型执行自动命令,则可以更改自动命令。例如,如果要添加python文件,则可以更改*.c*.c,*.py
saginaw

对不起,我说每当您输入/离开缓冲区都将执行自动命令时,我错了。第一个将在窗口中显示缓冲区后执行,第二个将在从窗口中删除缓冲区之前执行。
萨吉诺2015年

Answers:


6

我正是针对一个文件执行此操作,我经常参考NOTES.otl以下文件.vimrc

" Useful for my Quick Notes feature in my tmuxrc
augroup QuickNotes
  au BufWrite,VimLeave NOTES.otl mkview
  au BufRead           NOTES.otl silent loadview
augroup END

这意味着您可以使用:mkviewand :loadview命令处理手动折叠。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.