2016-11-27 56 views
1

如果我用vim打开目录,但不打开文件,我想打开CtrlP。我喜欢让它自动打开,我只是为了方便打开一个目录。但是,如果我确切地知道哪个文件要打开是因为添加了加载时间,这会稍微不方便。在VimEnter上打开CtrlP只打开目录

目前我只是有这个在我的.vimrc

autocmd vimenter * CtrlP

预先感谢任何答复!

回答

1

您可以编写一个函数来测试参数,以查看是否传递了单个目录,如果是,则执行CtrlP。这是一个非常基本的解决方案:

function! MaybeCtrlP() 
    if argc() == 1 && isdirectory(argv()[0]) 
     " Uncomment this to remove the Netrw buffer (optional) 
     " execute "bdelete" 
     execute "CtrlP" 
    endif 
endfunction 

autocmd VimEnter * :call MaybeCtrlP() 
+0

其他答案是一个很好的解决方法,但这是我正在寻找的答案!谢谢! – ijsnow

1

.bash_profile,创建别名:

alias vimCtrlP="vim +CtrlP" 

然后每次你需要这个时候,使用vimCtrlP,你会发出壳vim,其次是目录。

+1

这是一个简单的解决方案!谢谢! – ijsnow