Как открыть файл в new tab по умолчанию в NERDTree?

Я хочу, чтобы файл был открыт на новой вкладке при вводе или двойном щелчке по нему. Я знаю, что есть t ярлык, но я всегда открываю файл на новой вкладке, и ввод более удобен для меня.

6 ответов


попробуйте добавить

let NERDTreeMapOpenInTab='\r'

или

let NERDTreeMapOpenInTab='<ENTER>'

на .vimrc.

HTH


вы можете добавить https://github.com/Nopik/vim-nerdtree-direnter плагин, а также-он исправляет проблему открытия каталога, поэтому enter на узле каталога будет просто разворачиваться / сворачиваться, а не открывать новую вкладку.


Я использую следующую карту для перехода вкладки :

nnoremap <C-l> gt
nnoremap <C-h> gT

добавьте это в плагин. Его необходимо добавить в файл, например:~/.vim/nerdtree_plugin/mymapping.vim. Точное местоположение будет зависеть от того, какой менеджер плагинов вы используете для vim. например, для подключенного это ~/.vim/plugged/nerdtree/nerdtree_plugin/mymapping.vim

этот код добавляет сопоставление для клавиши enter для открытия файлов на новой вкладке, просто расширяя / сворачивая каталоги. Для новых вкладок он также отражает NERDTree, поэтому его можно разделить между вкладками.

call NERDTreeAddKeyMap({
  \ 'key': '<CR>',
  \ 'scope': "Node",
  \ 'callback': 'OpenInNewTab',
  \ 'quickhelpText': 'open node' })


" FUNCTION: s:openInNewTab(target) {{{1
function! OpenInNewTab(node)
  if a:node.path.isDirectory
    call a:node.activate()
  else
    call a:node.activate({'where': 't'})
    call g:NERDTreeCreator.CreateMirror()
    wincmd l
  endif
endfunction

s откроет файл, находящийся под курсором, в новом окне разделения по вертикали. Использовать t открыть в новой вкладке.


для события двойного щелчка конкретно, это (только?) возможно, слегка изменив исходный код NERDtree (размещен здесь):

https://stackoverflow.com/a/31570970/5144840