跑步时:
vim /tmp/blah
:q
echo $?
我的退出状态为1
。这打破了各种各样的事情,包括Git。如果我在没有我的vimrc的情况下运行vim:
vim -u NONE /tmp/blah
:q
echo $?
我的退出状态为0
。我使用Pathogen所以这也有效地禁用了插件。有没有人建议有效地确定退出状态的原因?我知道详细运行Vim并记录到文件。我应该在这个文件中寻找特定的东西吗?
如果有一种找到确定退出状态的确切线的方法,我很乐意知道它,因为搜索周围并没有太多变化。
答案 0 :(得分:2)
最后在帮助中找到了这个命令::cq[uit]
。因此,在进行详细日志记录后,请搜索\<cq\%[uit]\>
。
更新:还有一些方法可以使用vim编译一些解释器支持来改变退出状态:至少,以下工作:
python import sys
python sys.exit(1)
" (same for python3)
perl exit 1
我不知道其他语言是否足以在这里写下会退出vim并具有不同退出状态的代码示例。另请注意,使用:pyfile
,:rubyfile
和其他:*file
获取的文件中的此类命令也应该可以使用,而且此代码也可以在未随插件分发的模块中使用。
我认为此时最有效的方法是在找到问题根源之前禁用插件。