在NERDTree中 Shift T 在新标签中打开文件,但标签位于打开NERDTree的标签之后。
可以在标签的末尾打开新标签吗?
答案 0 :(得分:10)
使用以下内容创建文件~/.vim/ftplugin/nerdtree.vim
,然后您不必编辑NERDTree本身:
if exists('b:haveRemappedT')
finish
endif
let b:haveRemappedT=1
let s:oldmap=maparg('T', 'n')
function! s:LastTab()
let tab=tabpagenr()
tabnext
execute "tabmove ".tabpagenr('$')
execute "tabn ".tab
endfunction
execute 'nnoremap <buffer> T '.s:oldmap.':call <SID>LastTab()<CR>'
答案 1 :(得分:6)
这是一个用于在最后打开所有新标签的通用autocmd。它也适用于NERDTree。
" move tabs to the end for new, single buffers (exclude splits)
autocmd BufNew * if winnr('$') == 1 | tabmove99 | endif
答案 2 :(得分:1)
将以下内容添加到.vimrc
autocmd BufNew * execute ":tabmove99"
这将始终将新打开的标签放在右侧的位置99处。
答案 3 :(得分:0)
我建议您修改插件并在:tablast
之前将其重新映射到:tabnew
。