VIM NERDTree プラグインを使用します。
ファイル アクションのダブル クリックを再マップして、ファイルをサイレント モードで新しいタブ ( ) で開く方法はありますTか?
1 はじめに
これは NERD ツリー バージョン4.2.0で機能します。
2 ディレクトリとファイルを新しいタブで開く
ディレクトリとファイルを新しいタブで開きたい場合は、次の行を~/.vimrc
.
let g:NERDTreeMapOpenInTabSilent = '<2-LeftMouse>'
3 新しいタブでのみファイルを開く
新しいタブでファイルを開くだけの場合は、より洗練された操作を行う必要があります。
この関数を のどこかに追加しますNERD_tree.vim
。
" opens a file in a new tab
" KeepWindowOpen - dont close the window even if NERDTreeQuitOnOpen is set
" stayCurrentTab: if 1 then vim will stay in the current tab, if 0 then vim
" will go to the tab where the new file is opened
function! s:openInTabAndCurrent(keepWindowOpen, stayCurrentTab)
if getline(".") ==# s:tree_up_dir_line
return s:upDir(0)
endif
let currentNode = s:TreeFileNode.GetSelected()
if currentNode != {}
let startToCur = strpart(getline(line(".")), 0, col("."))
if currentNode.path.isDirectory
call currentNode.activate(a:keepWindowOpen)
return
else
call s:openInNewTab(a:stayCurrentTab)
return
endif
endif
endfunction
ラインを交換します
nnoremap <silent> <buffer> <2-leftmouse> :call <SID>activateNode(0)<cr>
と:
nnoremap <silent> <buffer> <2-leftmouse> :call <SID>openInTabAndCurrent(0,1)<cr>
この行はs:bindMappings()
、ファイルの関数にありますNERD_tree.vim
。