无法发出Vim:q执行时

时间:2015-03-11 12:53:18

标签: bash vim

我有一个方便的功能,可以让我轻松地通过Vundle在Vim的spf13 distribution中安装插件。

function vimp() {
    for plugin in "$@"
    do
        echo Bundle \"$plugin\" >> ~/.vimrc.bundles.local
    done
    vim --cmd "BundleInstall!" --cmd "BundleClean" --cmd "q"
    echo "Plugin installation complete"
}

不幸的是,q命令永远不会运行。我希望在退出编辑器之前进行捆绑安装和清理,但这似乎不起作用。其他命令最能说明问题。

直到最近,我才使用这个命令:

vim +BundleInstall! +BundleClean +q

哪个应该大致相同(在打开文件之后运行命令与之前相比),但q不再触发。任何想法我如何使这项工作,或任何人可以解释为什么它不起作用?

1 个答案:

答案 0 :(得分:2)

使用+qa--cmd qa代替+q--cmd quit。通常这与多个开放缓冲区有关(尝试使用+q +q+q +q +q进行验证)。