通过阅读 github 上的 NERDTree 文档,我了解到我可以做一些漂亮的事情,比如如果 vim 没有缓冲区启动,则自动打开 nerdtree,如果 NERDTree 是唯一打开的缓冲区,则自动关闭 vim。但是,我的最后一个问题是实现相反的 - 如果由于某种原因 NERDTree 是唯一打开的缓冲区并且没有触发 vim 的退出,则关闭树基本上什么都不做。我希望 vim 在这种情况下关闭,这样我就不必输入 :q 两次。
以下是实现其他便利的行:
autocmd vimenter * if !argc() | NERDTree | endif
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") && b:NERDTreeType == "primary") | q | endif