Ваше различие между :map
и :nmap
касается только режимов , к которым применяются сопоставления;здесь вам нужно провести различие между чистым буфером , который NERDTree использует для своего пользовательского интерфейса, и всеми другими буферами. К счастью, Vim позволяет определять сопоставления, которые применяются только к текущему буферу: :help :map-local
Для того, чтобы настроить это, вы должны находиться внутри активного буфера NERDTree. К счастью, плагин устанавливает пользовательский filetype для своего рабочего буфера, поэтому событие FileType
можно использовать для подключения к установке без необходимости непосредственного изменения плагина или всех командчто запустить его:
:nnoremap <silent> <M-1> :NERDTreeFocus<CR>
:autocmd FileType nerdtree nnoremap <buffer> <silent> <M-1> :NERDTreeToggle<CR>
Дополнительные комментарии
- Вы должны использовать
:noremap
;оно делает отображение невосприимчивым к переназначению и рекурсии. <M-1>
должно вызываться Alt + 1 , а не F1 (еслиу вас странная настройка клавиатуры)