Как отключить буфер NERDTree при открытии определенных типов файлов

В настоящее время буфер NERDTree открывается для каждого файла, который вы открываете. Если я пишу в *.scala, *.py и т. д., но я не хочу, чтобы это происходило для определенных файлов, которые я пишу (таких как Haskell). Например, когда я открываю файл Haskell, я не хочу, чтобы буфер NERDTree открывался, как только я набираю vim file.hs в терминале. Кто-нибудь знает, как заставить это работать?


person Petesta    schedule 20.12.2013    source источник


Ответы (1)


Вероятно, вы используете что-то подобное в своем ~/.vimrc для автоматического открытия NERDTree:

:autocmd VimEnter * NERDTree

Вам просто нужно добавить условное выражение, например. чтобы запретить открытие при передаче любых файлов в Vim:

:autocmd VimEnter * if argc() == 0 | NERDTree | endif

Поскольку команда VimEnter запускается после загрузки буферов, вы также можете проверить текущее значение 'filetype', чтобы подавить только, скажем, файлы Haskell:

:autocmd VimEnter * if &filetype !=# 'haskell' | NERDTree | endif
person Ingo Karkat    schedule 20.12.2013
comment
Спасибо @Инго-Карат! Это сработало отлично. Мне нужно больше изучить Vimscript. - person Petesta; 20.12.2013
comment
Рад, что смог помочь. Не забудьте закрыть вопрос, приняв ответ (нажмите на галочку). - person Ingo Karkat; 20.12.2013