vim / NERDtree /折叠 - 它能记住褶皱的状态吗?

时间:2011-08-28 13:40:09

标签: vim folding nerdtree

有没有办法让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 w回到NERDTree
  • 选择其他文件,使用空格键将其打开
  • C-w w回到NERDTree
  • 选择第一个文件,点击空格键

我原本打开的折叠现已关闭。 我正在编辑perl文件,因此perl_fold = 1有效。 当我从一个文件到另一个文件反弹时,我想要记住折叠的状态。

1 个答案:

答案 0 :(得分:3)

您确定<Space>映射吗?我没有在NERDTree的帮助中列出它。

无论如何,NERDTree与缓冲区内容或状态无关,它只是一个文件浏览器。

如果没有某种机制来保持缓冲区的状态,打开新文件时折叠就会丢失。幸运的是,您可以将set hidden添加到.vimrc中。

使用缓冲区保持不变,直到您使用:bd明确删除缓冲区。这意味着您在返回上一个文件时仍然可以使用NERDTree或使用:b <Tab>进行折叠。

Vim维基有关于缓冲区的nice pages