Vim 如何在打开某些文件类型时禁用NERDTree缓冲区

Vim 如何在打开某些文件类型时禁用NERDTree缓冲区,vim,nerdtree,Vim,Nerdtree,当前,NERDTree缓冲区将为您打开的每个文件打开。如果我写的是*.scala、*.py等,但我不希望我正在写的某些文件(比如Haskell)发生这种情况。例如,当我打开一个Haskell文件时,我不想在终端中键入vim file.hs后立即打开NERDTree缓冲区。有人知道如何让它工作吗?您可能在~/.vimrc中使用类似的东西来自动打开NERDTree: :autocmd VimEnter * NERDTree 您只需要添加一个条件,例如,当任何文件被传递到Vim时,抑制打开: :au

当前,NERDTree缓冲区将为您打开的每个文件打开。如果我写的是*.scala、*.py等,但我不希望我正在写的某些文件(比如Haskell)发生这种情况。例如,当我打开一个Haskell文件时,我不想在终端中键入
vim file.hs
后立即打开NERDTree缓冲区。有人知道如何让它工作吗?

您可能在
~/.vimrc
中使用类似的东西来自动打开NERDTree:

:autocmd VimEnter * NERDTree
您只需要添加一个条件,例如,当任何文件被传递到Vim时,抑制打开:

:autocmd VimEnter * if argc() == 0 | NERDTree | endif
当加载缓冲区后,VIMCENTER命令启动时,您还可以检查当前的
'filetype'
值,以便仅抑制Haskell文件:

:autocmd VimEnter * if &filetype !=# 'haskell' | NERDTree | endif

谢谢@Ingo Karat!这非常有效。我需要进一步研究Vimscript。很高兴我能帮上忙。不要忘记通过接受答案来结束问题(单击复选标记)。