Плагины, такие как NERDTree, используют так называемые чистые буферы для отображения своего "пользовательского интерфейса". Для подсветки синтаксиса большинство также устанавливает пользовательский, специфичный для плагина filetype . Таким образом, вы можете подключиться к событию :help FileType
: :autocmd FileType nerdtree ...
Непосредственное открытие терминала не сработало для меня;поскольку плагин прерывается в его настройке рабочего буфера, и не ожидает, что терминал будет вмешиваться. По крайней мере, здесь потребуются дополнительные команды для возврата к исходному пустому буферу. (Но что-то незаметное, например :echomsg
, будет работать как есть.) Или вы просто откладываете открытие через feedkeys()
:
:autocmd FileType nerdtree call feedkeys(":terminal\<CR>")
Более общий подход (который не будет работатьтолько для NERDTree) может подключиться к BufWinEnter
и проверить, является ли &buftype == 'nofile'
(что является типичным атрибутом чистых буферов).
Чтобы проверить, запускается ли Vim с «стартового экрана», используйте VimEnter
и убедитесь, что empty(bufname(''))
.
:autocmd VimEnter * if empty(bufname('')) | exe "terminal" | endif