为什么我的vim插件在启动时没有打开,除非我打开这样的vim:
❯ cd path/to/directory
path/to/directory❯ vim
为什么我不能这样打开它?
❯ vim path/to/directory
答案 0 :(得分:3)
您的autocmd会自动打开NERDTree检查参数的数量(argc()
),并且只有在未指定的情况下才会打开NERDTree:
" Only open nerdtree if no file was specified on startup
function! StartUpNerdtree()
if 0 == argc()
NERDTree
end
endfunction
autocmd VimEnter * call StartUpNerdtree()
这在某种程度上是有道理的:如果你在打开Vim时传递一个文件,你可能不需要目录浏览器。现在,要将此函数调整为您想要的,需要扩展条件以检查单个目录参数:替换
if 0 == argc()
与
if 0 == argc() || 1 == argc() && isdirectory(argv(0))
注意:此更改的确切情况取决于您的(NERDTree)配置;你没有在问题中包含这个,也没有指定所需的行为。我希望你能得到这个想法,并可以根据你的期望进行调整。