出乎意料的是,当我退出文件并重新输入文件时,我创建的折痕消失了(展开)。
在我们公司的大型项目中,有很多粘性(旧式)代码块有些过时但必不可少。
我真的需要几乎永久地折叠它们。
是否有一种简单的方法告诉Vim保存文件的折叠首选项?
#1 楼
我只是针对一个文件执行此操作,我引用了很多文件。NOTES.otl
我在.vimrc
中执行以下操作:使用:mkview
和:loadview
命令折叠。#2 楼
更为通用的方法(不仅适用于QuickNotes,而且适用于所有文件)如下:" Save and restore manual folds when we exit a file
augroup SaveManualFolds
autocmd!
au BufWinLeave, BufLeave ?* silent! mkview
au BufWinEnter ?* silent! loadview
augroup END
有关更多信息,请参见
view-sessions
,其中包括mkview
和loadview
命令。
评论
我不知道它是否可以解决您的问题,但是:mkview和:loadview命令可能会有所帮助。您可以尝试在vimrc au BufWinLeave * .c mkview和au BufWinEnter * .c静默loadview中添加这两行,并使它们适应您的特定需求。这些自动命令将在您为第一个缓冲区保留缓冲区时,以及为第二个缓冲区输入缓冲区时(仅针对C文件)自动执行。我已经从:mkview命令(:help:mkview)的帮助下复制了它们。根据帮助,它应该在使用手动折叠时还原折叠,并且选项“ viewoptions”包含折叠。如果要对其他文件类型执行自动命令,则可以更改自动命令。例如,如果要添加python文件,则可以将* .c更改为* .c,*。py。
对不起,我说每当您输入/离开缓冲区都会执行自动命令时,我错了。第一个将在窗口中显示缓冲区之后执行,第二个将在从窗口中删除缓冲区之前执行。