在vim麻烦中打开目录

时间:2014-04-09 00:29:23

标签: vim vim-plugin

为什么我的vim插件在启动时没有打开,除非我打开这样的vim:

❯ cd path/to/directory
path/to/directory❯ vim

为什么我不能这样打开它?

❯ vim path/to/directory

1 个答案:

答案 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)配置;你没有在问题中包含这个,也没有指定所需的行为。我希望你能得到这个想法,并可以根据你的期望进行调整。