有没有办法让 NERDtree 在从一个缓冲区切换到另一个缓冲区时记住折叠的状态?
这是我完整的 .vimrc:
set ignorecase
set scs
let perl_fold=1
hi Folded cterm=bold ctermfg=yellow ctermbg=lightblue
set modeline
cabbr N NERDTree
这是我观察到的:
- 启动 NERDTree
- 选择一个文件并使用空格键在新缓冲区中打开它(所有折叠都关闭)
- 在缓冲区中打开一些折叠
- C-w 返回 NERDTree
- 选择不同的文件,使用空格键打开它
- C-w 返回 NERDTree
- 选择第一个文件,按空格键
我最初打开的折叠现在已经关闭。 我正在编辑 perl 文件,因此 perl_fold=1 有效。 我希望当我从一个文件跳到另一个文件时能够记住折叠的状态。
最佳答案
您确定 <Space>
吗?映射?我没有在 NERDTree 的帮助中看到它。
无论如何,NERDTree 与您的缓冲区内容或状态无关,它只是一个文件浏览器。
如果没有某种机制来保持缓冲区的状态,当您打开新文件时,您的折叠就会丢失。幸运的是,您可以添加 set hidden
到你的 .vimrc。
有了它,缓冲区会一直保留,直到您使用 :bd
显式删除它们为止。 。这意味着当您返回到以前的文件时,无论是使用 NERDTree 还是使用 :b <Tab>
,您仍然保留折叠。 .
关于vim/NERDtree/folding - 它能记住折叠的状态吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7221318/