我通过以下操作打开nerdtree
:
$ mvim .
如果我那么做:
:NERDTree
我得到两个垂直窗格,它们显示一个树状视图。在左窗格中,如果我导航到文件并单击o
,则文件将在右窗格中打开。另一方面,如果我导航到右窗格中的文件并单击o
,则该文件将在右窗格中打开。那就是我想要的设置,但是我不想键入:NERDTree
到那里。
我正在尝试设置nerdtree,以便当我这样做时:
$ mvim .
两个垂直窗格自动打开。我找到了这个脚本:
"Nerdtree--open two windows on startup
autocmd vimenter * call s:CheckToSplitTwoTrees()
function! s:CheckToSplitTwoTrees()
if argc() != 1 || !isdirectory(argv(0))
return
endif
vsplit
"there should really be a better way to do this... e.g. :NERDTreeSecondary
call nerdtree#checkForBrowse(argv(0))
endfunction
这是我想要的,但是左窗格中的o
在左窗格中打开文件-而不是右窗格。什么控制o
窗格在哪个窗格中打开文件?
答案 0 :(得分:1)
如果您只是想-在启动时-如果它是目录,则对第一个参数执行:NERDTree
,那么您的功能还可以,但是只需执行所需的命令即可。
"Nerdtree--open two windows on startup
autocmd vimenter * call s:CheckToSplitTwoTrees()
function! s:CheckToSplitTwoTrees()
if argc() != 1 || !isdirectory(argv(0))
return
endif
exe 'NERDTree '.argv(0)
endfunction
安装了NERDTree插件后,使用目录打开vim会自动显示一个NerdTree浏览器(主要是o
用来替换浏览器的文件),而不是常规的netrw浏览器。因此,执行':NERDTree '.argv(0)
打开通常的(辅助)NERDTree,其中o
在 right 窗格中打开。
还要检查此related question。